xcrun error domain = FBSOpenApplicationErrorDomain,code = 1

时间:2016-04-29 15:41:31

标签: ios xcode xcodebuild xcrun

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

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)启动我的应用程序,这将开始没有任何问题。

我也尝试过:

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

1 个答案:

答案 0 :(得分:3)

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

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

从" -sdk iphoneos"更改编译命令类似于" -sdk iphonesimulator9.3" (如果这是您需要的版本)。 如果有疑问,请输入" xcodebuild -showsdks"并且屏幕上会显示已安装的SDK列表。选择你需要的那个。

您可能还需要使用-arch参数,并将其从ARM更改为i386(请记住模拟器运行到您的英特尔MAC上)。

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