iOS重签
由于渠道推广需要,可能需要多个包做备份推广,区别是icon、游戏名称、登录logo、bundleid、签名证书、支付Consumables不同,其他游戏包体完全相同。
反复修改多次文件提交Jenkins导包完全是浪费精力,于是尝试iReSign工具重签。
遇到的问题:
1.手动修改后缀ipa为zip使用解压工具解压,然后修改文件,最后重签失败,使用zip/unzip命令最后重签成功
2.手动创建的entitlements.plist文件未被工具重签时替换,未知无解,不选entitlements.plist选项会一直提示entitlements gennerated...,最后还是手动替换的
脚本重签,顺便又学习了下shell脚本:
1 echo "重签过程请依次正确输入:ipa文件、描述文件mobileprovision、证书名称cerName\n" read -p "请输入ipa文件路径(拖入终端即可) : " param_ipa
echo "输入:$param_ipa\n" if ! ([ -f "$param_ipa" ]); then
echo \"${param_ipa}\"文件不存在
exit
fi read -p "请输入mobileprovision文件路径(拖入终端即可) : " param_mobileprovision
echo "输入:$param_mobileprovision\n" if ! ([ -f "$param_mobileprovision" ]); then
echo \"${param_mobileprovision}\"文件不存在
exit
fi read -p "请输入cerName('iPhone Developer: XXXXX (XXX)') : " param_cerName
echo "输入:$param_cerName\n" unzip -qo "$param_ipa" -d extracted APPLICATION=$(ls extracted/Payload/) cp "$param_mobileprovision" "extracted/Payload/$APPLICATION/embedded.mobileprovision" echo "Resigning with certificate: $param_cerName" >&
find -d extracted \( -name "*.app" -o -name "*.appex" -o -name "*.framework" -o -name "*.dylib" \) > directories.txt
security cms -D -i "extracted/Payload/$APPLICATION/embedded.mobileprovision" > t_entitlements_full.plist
/usr/libexec/PlistBuddy -x -c 'Print:Entitlements' t_entitlements_full.plist > t_entitlements.plist
while IFS='' read -r line || [[ -n "$line" ]]; do
/usr/bin/codesign --continue -f -s "$param_cerName" --entitlements "t_entitlements.plist" "$line"
echo "line: ${line}"
done < directories.txt # /usr/bin/codesign --continue -f -s "$param_cerName" --entitlements "t_entitlements.plist" "extracted/Payload/$APPLICATION" echo "Creating the Signed IPA"
cd extracted
zip -qry ../extracted.ipa *
cd .. ls_date=`date +%Y%m%d`
mv extracted.ipa "${ls_date}_Signed.ipa" rm -rf "extracted"
rm directories.txt
rm t_entitlements.plist
rm t_entitlements_full.plist
iOS重签的更多相关文章
- iOS重签名脚本
unzip xxx.ipa //解压ipa rm -rf Payload/ xxx.app/_CodeSignature //删除旧签名 cp newEmbedded.mobileprovision ...
- 签名mobileconfig 重签ipa
.mobileconfig文件的签名 生成Apache专用的三个证书 双击[2331135_zgp.ink_chain.crt]可以看到它是个根证书,在mac上,双击它,导入到证书中心,然后再导出为p ...
- iOS安装包重签笔记
https://blog.csdn.net/skylin19840101/article/details/60583893
- 使用企业证书给iOS应用重签
来源:https://github.com/sailtsao/iReSign 这里有个开源的签名工具,已经修改为支持dylib frameworks等的签名了,使用这个签名不会出现任何问题 iReSi ...
- iOS重绘机制drawRect
iOS的绘图操作是在UIView类的drawRect方法中完成的,所以如果我们要想在一个UIView中绘图,需要写一个扩展UIView 的类,并重写drawRect方法,在这里进行绘图操作,程序会自动 ...
- 2020年IOS超级签最新实现原理详解
相信2019年最火的应该就是这个东西了,我也是摸着石头过河,勉强混进了这个行业! 超级签这个东西吧,说白了就是用个人账号分发应用,大致分成以下几个步骤吧 一.使用配置文件获取UDID 苹果公司允许开发 ...
- ipa 重签
IPA 重签名 时间 2014-03-03 10:28:36 txx's blog原文 http://blog.rpplusplus.me/blog/2014/03/03/ipa-re-codes ...
- iOS重一些常用的代理模式
(一)代理模式 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现.优势:解耦合敏捷原则:开放-封闭原则实例:tableview的 数据源delegate,通过和proto ...
- ios 重签名
http://stackoverflow.com/questions/6569120/resigning-an-application-outside-xcode #!/bin/sh TEMPDIR= ...
随机推荐
- 什么是 XML Schema?
XML Schema 的作用是定义 XML 文档的合法构建模块,类似 DTD. XML Schema: 定义可出现在文档中的元素 定义可出现在文档中的属性 定义哪个元素是子元素 定义子元素的次序 定义 ...
- java jdbc/ojdbc 链接oracle的三种方式
方法一:使用service_name 连接oracle jdbc:oracle:thin:@//:/<service_name> 例如: jdbc:oracle:thin:@//10.1 ...
- 异步编程错误处理 ERROR HANDLING
Chapter 16, "Errors and Exceptions," provides detailed coverage of errors and exception ha ...
- Day1 BFS算法的学习和训练
因为自己的原因,之前没有坚持做算法的相应学习,总是觉得太难就半途而废,真的算是一个遗憾了,所以现在开始,定一个30天入门学习算法计划. 我是根据<算法图解>的顺序进行安排的,自己对 ...
- SQL Server 多库操作 库名.dbo.表名 出错的问题!
SQL Server 多库操作 库名.dbo.表名 出错的问题! 数据库名不要用数字开头. 例如:343934.dbo.user 这就会出错.md a343934.dbo.user 就没问题!! 记住 ...
- [Android6.0][RK3399] 电池系统(三)电量计 CW2015 驱动流程分析【转】
本文转载自:http://blog.csdn.net/dearsq/article/details/72770295 Platform: RK3399 OS: Android 6.0 Kernel: ...
- Buildroot 龙芯1C支持指南
本文转载自:https://github.com/pengphei/smartloong-sphinx/blob/master/source/cn/loongson1c_buildroot_guide ...
- 《The Unreasonable Effectiveness of Recurrent Neural Networks》阅读笔记
李飞飞徒弟Karpathy的著名博文The Unreasonable Effectiveness of Recurrent Neural Networks阐述了RNN(LSTM)的各种magic之处, ...
- hdu4604 Deque(最长上升子序列变形)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4604 题意:一个含有n个数栈,每次取出一个数,可以把这个数放在deque(双向队列)首部,放在尾部,或 ...
- bzoj 5281: [Usaco2018 Open]Talent Show【dp】
注意到sum_t比较小,所以设f[i][j]为选前i头牛,当前sum_t为j的最小sum_w值,转移是f[i][j]=min(f[i-1][j],f[i-1][j-t[i]]+w[i]),然后i维用滚 ...