我在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通过命令行构建时,如何激活后台模式功能?
答案 0 :(得分:0)
执行xcodebuild取决于您使用Xcode设置项目的方式。我在这里假设你已经做到了这一点。
关于后台模式,您还需要确保Info.plist(或您命名的任何内容)包含您想要的UIBackgroundModes(这是原始密钥)。
当您通过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。