TestFlight提供iOS应用程序的无线beta分发(在非越狱设备上)。如何才能做到这一点?这是iOS功能还是漏洞利用?
答案 0 :(得分:91)
本文介绍了Apples OTA的实施方式,也可以在企业外部使用:ios wireless app distribution
完整流程为documented by Apple。 Apple还发布了registering devices的文档和示例代码,并使用配置文件获取UDID,因此您的网站可以检测到正在调用的设备。
一些具有不同强度的其他解决方案:
iOS Beta Builder,一个使用构建来创建网站的Mac应用程序。只需将生成的文件上传到您的网络服务器。
Diawi:简单的Web服务。上传您的IPA文件,可选择设置密码并向测试人员发送链接。
AppSendr:用于测试版构建托管的Web服务,类似于Testflight,但不包括设备注册过程。但是提供部署实用程序来自动上载新版本。
HockeyKit:在您自己的PHP5服务器上托管测试版的开源项目,具有其他功能,例如应用内更新客户端,自动设备专用网站和处理多个应用程序。完全基于文件和目录。
HockeyApp:用于测试版构建托管,应用内更新,统计信息以及设备注册,邀请和招聘的Web服务。还提供服务器端崩溃报告收集,符号化(针对所有线程)以及针对测试版和应用商店应用(iOS + Mac)的崩溃分组。 SDK是开源的,使用HockeyKit,QuincyKit和PLCrashReporter(这是关于如何在iOS上执行崩溃报告收集的唯一安全解决方案,请参阅this article。
答案 1 :(得分:87)
在TestFlight推出服务之前,这是可能的。该技术源于企业分配机制。由于4.0设备支持从网络安装。
请记住 - 您仍然需要为选定的一组UDID签署测试版分发版,您不能只在任何设备上安装它。他们所做的就是把IPA的电子邮件带出去。
请参阅:
更新:我想说测试飞行是我开发时使用的最有用的工具之一。刚刚将IPA通过电子邮件发送出去是一种保守的说法 - 我只是试图提出技术机制。他们在管理整个测试过程中表现出色。注册新设备。通知用户等。
答案 2 :(得分:5)
Testflight基本上使用了已经说明的普通Ad Hoc。
为此,您需要为每个设备添加UDID
才能将其添加到Ad Hoc配置文件中,使用新配置文件重新编译应用程序并重新分发新版本。
您可以借助OTA身份验证请求获取UDID
。这实际上是在将实际配置文件推广到设备之前在MDM中完成的步骤。它基本上要求设备提供有关其自身的更多信息,并将其发送回自己指定的服务器。
第一步记录在此处:Apple OTA Configuration
我猜Testflight在注册过程后使用此权限收集UDID
,电话名称,......
答案 3 :(得分:4)
是的,这是iOS的核心功能,适用于希望分发OTA的企业客户。
据推测,您可以将UDID与应用程序一起传递给TestFlight,并使用他们的Enterprise License将应用程序发送给您。我确定我错过了很多技术细节,但如果你想了解更多,Apple会在2010年WWDC上播放一段视频。
登录developer.apple.com,转到WWDC 2010 Videos并使用该链接转到vidoes。您想要的视频是“会话108 - 管理移动设备”。有关OTA可能实现的内容以及执行OTA配置必须采取的步骤,这些信息非常丰富。
答案 4 :(得分:0)
库存iOS设备“易受攻击”运行用户从拥有该设备的UDID的任何开发人员加载Ad Hoc应用程序,并在Apple开发人员门户网站上的100个允许设备中注册该UDID。
OTA分发只是从注册开发者安装Ad Hoc beta测试版分发的另一种方式。