1.Skip install
这个设置项常常与 引用工程 和 打包ipa 有关:
引用工程:
Activating this setting when deployment locations are used causes the product to be built into an alternative location instead of the install location.
参考:http://www.cnblogs.com/easonoutlook/archive/2013/01/20/2868944.html
2.Entitlements && Entitlement.plist
找到两个个非常好的文章,其中有提到entitlements - 授权文件:
http://www.cocoachina.com/ios/20141017/9949.html
http://blog.csdn.net/phunxm/article/details/42685597
在Code Signing 中有一项: Entitlements , 在Xcode不知道多少版之前是用Entitlement.plist来做此相关的操作的,其实还在,只是要经过操作查看,上面的文章有。
第一次接触到此项操作是使用iResign重签名工具有一项必填项目:
我们来看一下entitlements.plist的庐山真面目:
其对应xml文件是:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>application-identifier</key>
<string>XXXXXXXX.com.xxx.xx.xxx</string>
<key>get-task-allow</key>
<false/>
</dict>
</plist>
明显的有一项application-identifier就是整个entitlements的核心。而其格式就是 : 钥匙串的 UserID + 底层包名 BundleIdentifier ,暂时翻译为:带前缀的应用名。
比较有趣的是,在用Xcode的Archive导出ipa包的时候,也清清楚楚看到这一项:
其中 "application-identifier" 和 "keychain-access-grous" 一样的, 而 "com.apple.developer.team-identifier" 是前面两项的前缀,也即是UserID。
我们注意到了一项在entitlements.plist也出现的:get-task-allow, 查看资料得:
get-task-allow : when signed into an application, allows other processes (like the debugger) to attach to your app. Distribution profiles require that this value be turned off, while development profiles require this value to be turned on (otherwise Xcode would never be able to launch and attach to your app).
3.Mach-O Type
参看文章: http://www.cocoachina.com/industry/20131121/7392.html