在Iphone手机中如果用户安装了某些app会在手机的设置-通用最下方看到一栏“描述文件”,网上说描述文件是xml文件,记录了特定app的一些重要信息,比较重要。我写这篇博文主要是为了记录我在开发中遇到的一个跟描述文件有关的问题,希望对大家以及6个月以后的我有一些启示。
问题描述:
QA测试用的手机QAIphone6在用pp助手安装app的时候总是失败,提示“ApplicationVerificationFailed”,而给其他手机用同样方式安装此app时可以顺利安装成功。
解决尝试:
网上查了下,天南地北的说啥的也有,看的我眼花缭乱的,而主要的解决方法都是说“越狱.....”,即都是针对越狱机器的,可是QAIphone6根本就没越狱啊,这有点愁人。于是决定用自己的小4捣鼓捣鼓。由于只有QAIphone6安装失败而其他的安装成功,因此把目标定位在QAIphone6的“配置”上。无意之中看到了小4设置里面的“描述文件”一栏,里面有“inhouse_for_any”,这不正是我打包用的Provisioning Profile么,于是:
①删掉了这个描述文件,然后删掉之前安装的app,在通过pp助手进行安装。果然不出所料,这回安装失败,且提示信息也为“ApplicationVerificationFailed”。
②之后,我通过Xcode直接在小4上跑,发现这个“inhouse_for_any”又被安装到了小4上。于是删掉app,通过pp助手再次安装app,这次安装成功。
通过以上两次实验猜测:app是否能通过pp助手安装成功跟这个“描述文件”一定有大关系。
为了解决这个问题,我研究了下Xcode,发现通过Xcode可以很方便的把项目使用的Provisioning Profile安装到手机上。具体步骤如下:(以下例子仅为演示具体步骤,不采用上边谈到的“inhouse_for_any”)
(1)找到对应的Provisioning Profile。
其实Xcode项目中显示的Provisioning Profile是以mobileprovision为扩展名的文件。如图:
为找到Layne3对应的具体文件,可采用如下方法:
①顶部Xcode->Preferences,在弹出的对话框中选择Account标签页,如下图:
如果当前没有账号,则使用左下角的+号添加你的开发者账号,添加完成后如上图所示。
②选择右下角的“View Details”,弹出如下对话框:
这时对话框下方就是与这个开发者账号关联的所有Provisioning Profile文件,鼠标在Layne3上点击右键,选择“Show in Finder”即可打开对应文件夹查看到实际的.mobileprovision文件:
事实上,这个mobileprovision文件就是在~/Library/MobileDevice/Provisioning Profiles文件夹下,但名字是乱的,一般用户直接进入这个文件夹是无法直接找到自己需要的mobileprovision的,这会是个体力活,也是技术活。找到之后,我们将它复制到桌面上。
(2)给手机安装Provisioning Profile(即.mobileprovision文件)
将手机连接到电脑上,然后在Xcode的顶部Window菜单下选择Devices,如下图:
在弹出的对话框选择具体的设备,右击鼠标,并选择“Show Provisioning Profiles”,如图:
之后会弹出新的对话框,如图:
在这个对话框里,用户就可以很方便的通过左下角的+和-来为手机添加或删除Provisioning Profiles了。
为手机添加好对应的Provisioning Profile之后再通过PP助手安装app就应该没问题了。
注意:
在整个过程中还有一点需要说明,那就是有的手机即使你安装了Provisioning Profile,手机的设置-通用里面也不会显示“描述文件”一栏(至少我的5s是这样),具体原因还不清楚。所以,对于要查看某个手机是否安装有Provisioning Profile,用以上提到的方式应该是最靠谱的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。