2015-11-30 53 views
13

我有以下目标:使用xcodebuildios-sim构建和运行.app应用程序。使用xcodebuild在模拟器上构建并运行应用程序

我正在使用以下脚本来构建应用程序。

xcrun xcodebuild \ 
    -scheme $XCODE_SCHEME \ 
    -project $XCODE_PROJECT \ 
    -configuration Debug \ 
    -destination generic/platform=iOS \ 
    -derivedDataPath \ 
    build 

然后运行它,我使用

ios-sim launch MyApp.app/ --devicetypeid "iPhone-6-Plus, 9.1" 

每次我收到以下消息:由服务指定

计划不包含请求 架构之一:?

发生了什么,该应用程序无法运行?

注:我办对在Xcode(包含在导出数据之一)建造的.app第二个命令(ios-sim...)的程序工作正常。

+0

出于纯粹的好奇心,你为什么要这样做,而不是仅仅在XCode中运行和构建项目? –

+0

你确定你已经安装了这个模拟器吗?从错误中看出您的机器上不存在您正在运行的特定设备 –

+1

@HaydenHolligan为了做测试自动化而需要。 –

回答

20

好的。找出问题。

您需要指定正确的destination。例如。

xcrun xcodebuild \ 
    -scheme $XCODE_SCHEME \ 
    -project $XCODE_PROJECT \ 
    -configuration Debug \ 
    -destination 'platform=iOS Simulator,name=iPhone 6 Plus,OS=9.1' \ 
    -derivedDataPath \ 
    build 

这样的Xcode将创建一个包含您的产品的文件夹(称为build)(在Debug-iphonesimulator特别的样子)。在您运行xcodebuild命令的目录内创建了build dir。

现在你可以以运行ios-sim命令(见ios-sim更多的引用)或simctl(详情参见iOS 8: Building custom simulatorsBuild And Run iOS Apps In Commmand Line)指向该文件夹。

+0

如何将相同的模拟器与目标中的不同ID一起传递? –

+0

像我有2个iPAD仿真器 i)平台:iOS模拟器,编号:0F9084E0-4E0D-43F7-AD3D-AB959744BD09,操作系统:9.3,名称:iPad 2 ii)平台:iOS模拟器,编号:4E05355C-EF57 -4771-96D4-0F9FCF24A0D2,操作系统:9.3,名称:iPad 2 –

+0

如何运行基于工作区的项目,即包含多个窗格项目的项目。请粘贴这里完整的命令来运行一个-workspace –

相关问题