1

我正在尝试使用以下命令通过命令行构建应用程序:

xcodebuild PRODUCT_BUNDLE_IDENTIFIER=com.myapp \
PROVISIONING_PROFILE="XXXX-XXXX-XXXX-XXXX-XXXX" \
CUSTOM_URL="http://mycustomurl.com" \
-project AppName.xcodeproj \
-scheme AppName \
-sdk iphoneos \
-configuration AppStoreDistribution archive -archivePath $PWD/build/AppName.xcarchive

然后:

xcodebuild -exportArchive \
-archivePath $PWD/build/AppName.xcarchive \
-exportPath AppName.app \
-exportFormat app

现在,我想运行这个应用程序来使用模拟器进行测试,所以我运行这些命令来安装和启动应用程序:

xcrun -v simctl install booted AppName.app #Install
xcrun simctl launch booted com.myapp #Launch

应用程序立即关闭,xcrun 又回来了:

An error was encountered processing the command (domain=FBSOpenApplicationErrorDomain, code=1):
The operation couldn’t be completed. (FBSOpenApplicationErrorDomain error 1.)

现在,如果我尝试使用 xcode(通过 gui)启动我的应用程序,这将毫无问题地启动。

我也尝试过:

  • 重置模拟器
  • 检查应用程序传输安全设置
  • 关闭应用程序的所有实例
4

1 回答 1

3

您正在为 iphoneos 构建(我可以在您的 xcodebuild 命令行中看到“-sdk iphoneos”参数)。然后,您尝试将生成的 .app 对象安装到模拟器上(!!)。

这将产生架构不匹配,从而产生神秘的运行时错误。

将编译命令从“-sdk iphoneos”更改为“-sdk iphonesimulator9.3”(如果这是您需要的版本)。如果有疑问,请键入“xcodebuild -showsdks”,屏幕上将显示已安装 SDK 的列表。选择您需要的那个。

您可能还需要弄乱 -arch 参数并将其从 ARM 更改为 i386(请记住 Simulator 运行在您的 intel MAC 上)。

试着告诉我们它是否有效。

于 2016-06-22T08:31:40.610 回答