在使用xcodebuild构建时如何获得XCode功能?

时间:2016-08-22 15:06:38

标签: ios xcode xcodebuild

我在XCode中为我的应用程序使用了背景模式(voip)功能。当我通过XCode构建应用程序时,配置文件允许此功能 - 该应用程序正常工作。但后来我以下列方式从命令行构建我的iOS应用程序:

xcodebuild -workspace test.xcworkspace -scheme test -sdk iphoneos clean build archive -archivePath test.xcarchive
xcodebuild -exportArchive -archivePath test.xcarchive -exportPath acc exportFormat ipa

以这种方式构建ipa并将其安装到iPhone上时,应用程序中的背景模式voip无法激活。使用xcodebuild通过命令行构建时,如何激活后台模式功能?

2 个答案:

答案 0 :(得分:0)

执行xcodebuild取决于您使用Xcode设置项目的方式。我在这里假设你已经做到了这一点。

关于后台模式,您还需要确保Info.plist(或您命名的任何内容)包含您想要的UIBackgroundModes(这是原始密钥)。

enter image description here

当您通过xcodebuild构建时,只要您的项目设置正确,就可以获取所有正确的信息。

有关后台执行的更多信息,请访问:https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html

答案 1 :(得分:0)

显然,不使用-exportOptionsPlist参数就弃用了“xcodebuild -exportArchive ...”行。所以我在同一个目录中创建了一个options.plist,如下所示:

<plist version="1.0">
<dict>
    <key>teamID</key>
    <string>734KHEMHW2</string>
    <key>method</key>
    <string>development</string>
    <key>uploadSymbols</key>
    <true/>
</dict>
</plist>

http://developer.apple.com上找到相应的团队ID。

然后使用以下行导出到ipa:

xcodebuild -exportArchive -exportOptionsPlist options.plist -archivePath test.xcarchive -exportPath .

这成功创建了启用了voip功能的ipa。