如何在Xcode模拟器中安装iOS应用程序?

13
我们是iOS(以及其他移动平台)开发人员,我们的销售人员经常需要为客户提供应用程序演示。我们正在尝试自动化这一过程,使销售人员可以进入自助网站并将应用程序反馈到他们的模拟器中。使用xcodebuild,我们可以启动构建过程,然后将其呈现为安全下载链接(通过我们的Intranet),但所有这些都只能让他们将其安装到他们的iOS设备上。这还可以接受,除非在旅途中的每个人都有一个iOS设备(或者有些人有旧的iPod touch,并且那会非常慢)。因此,我认为必须有一种方法将其安装在他们的模拟器中。我看到其他人已经通过将模拟器目录压缩并放置在另一个文件夹中来对其进行了破解: http://discussions.apple.com/thread.jspa?messageID=7680994 设置目标为模拟器,发布。部署。停止iPhone模拟器。从~/Library/Application Support/iPhone Simulator/User/Applications/压缩您的应用程序,将其发送给其他人,并让该人员知道在那个文件夹中将其解压缩,然后启动iPhone模拟器-您就完成了。我猜我们可以这样做,但它似乎不确定(或者至少更难脚本化)。我更喜欢使用.app文件,但如果唯一的方法是使用这种hacky复制和粘贴操作,那么我们必须这样做。有什么想法吗?

这主要是由于苹果的限制设备定位方案所致。即使如此,在我们拥有的设备上安装二进制文件仍然很麻烦。相对而言,在模拟器上安装会更容易些。 - Matt Rogish
6个回答

4

2

我知道这不是直接回答你的问题,但你有没有考虑过使用一个装有所有软件的服务器(例如Mac mini)?然后他们可以使用某种形式的屏幕共享来远程运行应用程序。


谢谢您的建议。我们确实有一台Mac mini(作为我们的构建服务器)。不幸的是,大多数时间他们在路上时没有网络访问权限(特别是在客户现场,可能没有手机服务或被锁定的WiFi),所以那并不是很可行。购买个人蜂窝数据会比购买每个人iPod Touch更昂贵 :) - Matt Rogish

1

我已经与许多客户一起使用了上述的模拟器构建机制,一旦他们找到了正确的文件夹来放置实际文件夹,一切都进行得非常顺利。

正如你所说,这有点像是一个hack,但在某些情况下,它也比处理临时供应等问题更重要,当它不那么重要时,就可以避免在实际设备上进行操作。

我还没有尝试过,但我听说Test Flight(http://testflightapp.com/)也是分发演示版/测试版的好方法,因此也值得一看。


1

1
在您的构建产品目录中,通常位于Debug-iphonesimulatorRelease-iphonesimulator下,找到.app捆绑包。将该捆绑包拖放到模拟器窗口上,它将被安装(您可能需要在主屏幕上滑动以显示图标)。
您也可以使用xcrun simctl install从命令行对此进行脚本化。xcrun simctl launch命令也可以启动应用程序。
大多数构建系统都可以自动化(或者您可以在Xcode内使用后构建脚本,作为最后一步)创建应用程序捆绑包的ZIP文件并将其放置在某个位置以供下载。
(如果支持创建模拟器IPA的存档工作流程对您有用,请在https://bugreport.apple.com上提交增强请求)

0

不支持iOS7,绝对不支持iOS8 / Mac10.10。 - vijayst

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接