如何利用开发者账号重签ipa文件,并部署到IOS设备做测试
作者:网络转载 发布时间:[ 2014/5/16 15:39:10 ] 推荐标签:手机测试
近在搞IOS平台的测试,遇到了个不大不小的问题
测试build是通过TestFlight递交的,测试人员手上没有源代码,开发人员在国外,不方便共享源码,如何能做IOS的自动化测试?
经过折腾,发现了个可能的办法,
1. 先通过TestFlight安装build
2. 再把build通过ifanbox把build导出来成为ipa文件
3. 下面需要把ipa文件重新签名,方法有两种
方法一:
利用商业化工具签名,SeeTest支持把ipa重新签名,签名需要提供 provision文件,和开发者证书私钥和密码
方法二:
自己想办法签,代码参考如下
unzip app.ipa
rm -rf Payload/MyApp.app/_CodeSignature/
cp ~/Downloads/AdHoc.mobileprovision Payload/MyApp.app/embedded.mobileprovision
codesign -f -s "iPhone Distribution: Company Certificate" --resource-rules Payload/MyApp.app/ResourceRules.plist Payload/MyApp.app
zip -qr app-resigned.ipa Payload/
其中"iPhone Distribution: Company Certificate"是你证书的common name, 别的没什么要注意的。
方法三:
网上有推荐用一个叫iresign的工具签名,其实挺好用,该工具只能工作在mac下面
个人推荐用方法三,但是要注意一个问题,是iresign需要你提供四个信息,一个是ipa文件,一个是provision文件,一个是证书的common name,后一个是entitlements.plist文件。前三个想必大家都懂,但是第四个之前真没听过,网上资料也有限。
请用下面的方法生成entitlements.plist文件
/usr/libexec/PlistBuddy -x -c "print :Entitlements " /dev/stdin <<< $(security cms -D -i production.app/embedded.mobileprovision) > entitlements.plist
/usr/libexec/PlistBuddy -c 'Set :get-task-allow true' entitlements.plist
生成之后,再利用iresign,可以做出一个可以被xcode instrument的ipa包了。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11