iOS Ad Hoc安装失败
当我尝试通过TestFlightApp.com安装应用程序时,出现以下错误。
"Unable to download application. "helloworld" could not be installed at this time.
我也尝试通过iTunes和Appleconfiguration器进行安装。
当我第一次得到这个错误时,我认为这可能是由于苹果的开发者程序在几个星期后closures的,所以我使用笔记本电脑上的代码签名请求重新生成了所有的证书,然后重新构build了所有的configuration文件。
然后我删除了我的iPhone和XCode中的所有configuration文件,并从手机中删除了TestFlight。
然后,我将应用程序归档,上传到testing航class,允许configuration文件中的所有设备,并发送通知电子邮件与下载链接。
当我尝试下载时,进度条几乎一直到最后,popup错误。 这是我在安装过程中从控制台看到的(从iPhoneconfiguration实用程序):
SpringBoard[67] <Warning>: Killing com.helloworldapp for app installation installd[53] <Error>: 0x2c6000 handle_install: Install of "/var/mobile/Media/Downloads/-2429066128781955904/-410631401396950200" requested by itunesstored installd[53] <Error>: 0x2c6000 MobileInstallationInstall_Server: Installing app com.helloworldapp installd[53] <Error>: Aug 23 11:45:37 SecTrustEvaluate [leaf CriticalExtensions IssuerCommonName] installd[53] <Error>: 0x2c6000 verify_signer_identity: MISValidateSignatureAndCopyInfo failed for /var/tmp/install_staging.a1ku9y/foo_extracted/Payload/helloworld.app/helloworld: 0xe8008017 installd[53] <Error>: 0x2c6000 do_preflight_verification: Could not verify executable at /var/tmp/install_staging.a1ku9y/foo_extracted/Payload/helloworld.app installd[53] <Error>: 0x2c6000 install_application: Could not preflight application install itunesstored[71] <Error>: 0x183b000 MobileInstallationInstall: failed with -1 installd[53] <Error>: 0x2c6000 handle_install: API failed
所以我已经有了全新的证书和configuration文件,configuration文件中有我正在尝试安装的设备,我已经在TestFlight中授予了这些设备的权限。
我现在处于亏损状态,过去我已经解决了类似的问题,所以我已经用完了所有我平常的想法。
而且我也尝试过增加版本号,(这是以前的工作),但没有运气。
我最近把项目从我的/用户/文件夹移到外部硬盘驱动器,但我已经更新了所有必要的path,我可以构build应用程序并通过Xcode运行,所以我不明白这是怎么回事。
更新:感谢杰森的答案,我设法从Appleconfiguration器得到一个不同的错误
A signed resource has been added, modified or deleted -402620393 com.apple.mdk.amderror
更新:为了完整性,这里是我尝试通过iTunes进行同步时在iPhone上遇到的错误:
iTunes Sync: 'helloworld' failed to install
我在TestFlight工作。 在上传时,我们试图捕捉每一个我们可以防止的情况,但是有些情况是不可捕捉的,或者我们以前没有见过。 而iPhone的错误消息“无法下载应用程序”并没有给你太多的信息。
在这种情况下,最好的做法是将IPA(您上传到TestFlight的同一个IPA)手动安装到设备上。 如果你使用苹果的configuration器,这很容易。 如果Apple的Configurator无法安装它,问题不是由TestFlight引起的,希望Configurator会给你更好的错误信息,帮助你解决问题。 如果它可以安装它,那么它可能是一个TestFlight的问题,你应该在这里给我们一个支持请求。
无论哪种方式,让我知道发生了什么。 希望下一次我们可以再进行一次上传检查来防止这种情况。
问题是我的外部硬盘驱动器,我100%确定这是因为我复制项目文件夹回到我的SSD,build立和编译相同的证书,现在它已通过试飞。
这是一个便宜的USB硬盘驱动器,因为我的MacBook硬盘已满,我还没有储存足够的新的一个。 我会build议不build立在外部硬盘上
我不是100%确定,但我猜我的代码签名证书只对项目最初创build的硬盘有效,将其移动到硬盘可能就像是将文件夹完全移到另一台计算机上,代码签名。
如果其他人能够证实或强化我的理论,那将是一件好事,但肯定会把这个项目移回到我的笔记本电脑的内置硬盘上,这个项目的原始位置,立即为我解决了这个问题。
然后,我将应用程序归档,上传到testing航class,允许configuration文件中的所有设备,并发送通知电子邮件与下载链接。
在构build和存档应用程序之前,您必须将设备添加到configuration文件。 批准的设备列表捆绑在应用程序中,而不是在安装时在线检查。