无论如何,事情是我成功处理所有需要的步骤,从头开始创建.app文件(好吧,目录),但是当我执行下面的2行,特别是第二行,一旦我执行后,我得到一个应用程序崩溃尝试上传然后将.app运行到模拟器上:
xcrun simctl install booted $(PWD)/build/Debug-iphoneos/APP_NAME.app xcrun simctl launch booted somebundle.id.from.me <- CRASH
无论我尝试什么,xcrun命令都会在system.log上产生这个错误:
Error Domain=FBSOpenApplicationErrorDomain Code=1 "(null)"
显然我的应用程序被安装到模拟器上(我已经多次擦除以创建一个全新的安装),它甚至可以启动(启动屏幕从模拟器桌面上出现的图标增长),但是我得到的第一件事就是我期待通过启动画面的应用程序是前面提到的崩溃行错误(在system.log文件中).
有人说我可能在我的模式定义面板中有一些虚拟空变量浮动.我已经检查过了,情况并非如此.没有任何变量.
其他一些人说应用程序的旧版本可能在模拟器的任务调度程序中处于活动状态.事实上,有时我发现我的任务是过去的一项旧任务,但是两次按“home”去模拟器任务管理器,杀死它,并试图用xcrun再次启动我的.app文件什么也没做,这个问题还在那里.
我甚至停止从Xcode本身启动的相同应用程序的旧执行(使用STOP按钮),但没有运气.
所以,我肯定迷路了.我无法通过命令行将我最近创建的.app启动到模拟器上.
使用9.3(iPhone 4s)模拟器和9.3(iPhone 6plus)模拟器失败了.
我的XCode工具是我的XCode 7.3.1中包含的工具.
我正在使用“ElCapitán”.
我想不出别的什么.
我希望能够通过“命令行工具”上传和运行我的.app.
我希望它可能以某种方式,或者至少看起来我真的很接近成功.
我可能忽略了任何其他暗示?
问候和感谢.
解决方法
简短版本:我正在构建一个“真正的ios设备”编译版本,然后尝试将其安装到模拟器上.更改xcrun和xcodebuild(体系结构和路径)参数可以解决问题,现在,当从模拟器运行时,应用程序就像魅力一样.
长版:
出了什么问题?我在调用xcodebuild时(错误地)选择的体系结构和路径
定义我的编译体系结构的参数之一是隐式声明“ARM”(-sdk iphoneos),但Simulator运行时引擎使用的体系结构是i386(我们在MAC中).
正如预期的那样,一旦将“real-device-compiled-.app”安装到模拟器上,模拟器本身就不会理解如何启动它,然后就会发生神秘的崩溃.
什么给了我线索?
在Stack Overflow中我在其他地方找到的其他2个问题.在这里寻找额外的信息:
Apps manually installed in simulator crashes upon load
xcodebuild: simulator or device?
是什么让我检查其他2个线程?
我发现一个.log文件,而不是默认的和/ var /log / system.log
RANT:您可以在现代MAC上找到MANY .log文件的问题! / RANT
无论如何,在发现哪个.log文件对我有用的过程中,我发现了这些:
> $HOME / Library / CoreSimulator / CoreSimulator.log(对于
我的问题,无论如何).
> $HOME / Library / CoreSimulator / [UGLY_HASH_CORRESPONDING_TO_THE_SIMULATOR_YOU_ARE_USING] /system.log
最后一个是好的.在这个.log文件的末尾,我在尝试启动“糟糕构建的.app”文件时发现了其他信息.日志说的是这样的:
Program specified by service does not contain one of the requested architectures
就是这样.
如果有人在未来发现他/她自己处于相同的情况,我希望我上面写的所有这些信息都会有用.
问候.
PS:如果你找不到你麻烦的模拟器(及其相关的.log文件)所在的文件夹,那么(可以安装数十个模拟器),
您可以使用恶魔插件叫做̶X̶C̶o̶d̶e̶W̶a̶y̶.̶一旦这个插件是安装并正常运行,̶你可以检查路径您iOS8上̶模拟器这样做在Xcode:̶
XCODE̶-̶>̶WINDOWS̶-̶>̶̶X̶C̶o̶d̶e̶W̶a̶y̶̶-̶>̶去iOS8上̶模拟器夹FINDER将打开,̶而且会有您的.log文件̶:̶)̶̶