我正试图在内部分发一个iphone app app for beta test给3个用户,我自己(iphone 4)和另外两个(iPad 2,iphone 3G).我的设备也用作开发设备.我遵循了所有Apple文档,归档了应用程序并为企业部署做好了准备.我把它放在我的web服务器上,带有.plist清单文件.为了测试它,我将它安装在我自己的设备上(这也是开发设备),它运行得很好.然后我将链接发送给我的其他2个用户,然后他们报告说他们收到了一条消息,说他们"无法下载".所以首先我认为UDID可能存在问题,但事实并非如此.我让我的用户下载了一个UDID发送者应用程序,他们完美匹配.那之后我问了这个问题: .mobileprovision的MIME类型是什么 ,我想知道.mobileprovision文件的MIME类型.我获取了这些信息,然后还发送了配置文件的链接.我的两个测试用户都可以下载并安装.mobileprovision文件; 问题是当他们再次尝试安装应用程序时.一个用户收到一条消息,说"无法连接到服务器www.myserver.com",而另一个用户安装80%的应用程序,然后获得"无法下载"消息,有2个选项:"重试"和"完成".
我很茫然.有人有什么想法吗?我很绝望!提前致谢!
上下文:我正在使用Phonegap Build为ad-hoc OTA分发构建.ipa文件(适用于beta测试人员).我在Phonegap构建配置文件中添加了一个新密钥(这是我公司的概念验证),即分发证书和作为.p12文件导出的私钥.然后,我从Apple开发门户网站请求并下载了ad-hoc用户的移动配置文件.我从我之前构建的本机应用程序中创建了自己的.plist,然后将.ipa放在Web服务器上,其中包含下载和安装的常用说明.几乎安装了.ipa文件,然后我收到一条错误消息,指出该文件无法下载.我查看了Organizer中的设备日志,并没有太多.控制台告诉我MobileInstallationInstall: failed with -1是问题.当我做同样的事情,但开发人员配置和开发人员证书导出到.p12时,我可以通过iTunes安装它没有问题.但我似乎无法将OTA分布平分掉.
有关为什么我得到这个以及我能做些什么来解决它的想法?这是我从过去的项目中得到的明显的plist:
编辑:是的,设备已正确分配给配置文件.
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://myserver/adhoc_download/myapp.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://myserver/adhoc_download/images/icon-ipad3.png</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://myserver/adhoc_download/images/icon-iphone4.png</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.mycompany.myapp</string>
<key>kind</key>
<string>software</string>
<key>subtitle</key>
<string></string>
<key>title</key>
<string>myapp</string>
</dict>
</dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud) .mobileprovision文件类型的正确MIME类型(IIS)是什么?我是否正确地思考这个问题?如果我必须将每个人的设备连接到mac dev机器来安装.mobileprovision文件,那就有点违背了无线ad hoc分发方法的目的.
我有一个我为应用程序商店构建的iPhone应用程序.在我到达那里之前,我需要在内部进行测试.所以本周早些时候我出去了,获得了一个分发配置文件并将其安装在我的组织周围的大约50台设备上.没问题,一切都变得非常流畅,每个人都很开心.所以我稍微清理了一下代码,进行了一些重构,并添加了一些修饰.与此同时,我们在测试版中添加了更多设备(大约10个附加单元).因此,当我准备构建并运行第二个测试版时,我出去了,获得了一个新的配置文件,并将该版本存档为ad-hoc无线部署.然后我在手机上测试了应用程序(也是开发设备),但无法安装.我在Organizer中检查了设备控制台,看到了一个如下所示的错误:<Error>: entitlement 'get-task-allow' has value not permitted by a provisioning profile.没关系,当我在3天前归档和部署它时,没有Entitlements plist就可以正常工作.所以我想"好吧,只是其中一个怪癖." 我添加了一个Entitlements.plist并设置get-task-allow为YES.然后,我使用我的分发配置文件重新存档它,并尝试将其安装到我的设备上,并且确实正确安装.然后我在两个独立的设备上尝试了它 - 一个在我周二成功部署它时安装了它,另一个没有安装它.两个人都没有工作.它做了几乎到最后的事情然后说"安装失败".所以我想"好吧,它不喜欢Entitlements.plist文件.我已经读过一些东西,如果它在构建中有一个Entitlements.plist,那么Apple会拒绝应用程序商店的应用程序(是真的吗?我如果我能再次获得这个愚蠢的测试版,我想提交下周结束!)我删除文件,存档并再次部署它,我得到了同样的错误.我将其中一个设备挂钩到了Organizer的控制台,我收到一条如下所示的错误消息:
Jun 29 08:49:13 unknown installd[14394] <Error>: profile not valid: 0xe8008012
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 install_embedded_profile: Could not install embedded profile: -402620398
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 verify_signer_identity: Could not copy validate signature: -402620395
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.PHE3Kj/foo_extracted/Payload/Lenexa.app
Jun 29 08:49:13 unknown installd[14394] …Run Code Online (Sandbox Code Playgroud)