网上关于签名的脚本有很多,我找了个本人觉得比较好用的脚步iOS_resign_scripts,下载脚步里面有三个脚本文件,这里我只用了 ios_resign_from_app_to_ipa
这个脚步就可以达到我的目的了。
一、基础环境准备
1.准备需要重签名的IPA包
打开itunes 下载一个最新版本的微信ipa包,然后拷贝出来备用
看图1:
itunes.png
2. 准备 mobileprovision文件
mobileprovision
文件干嘛的,怎么创建这里就不详细说明了,搞iOS开发的都懂😏 这里将mobileprovision文件重命名 embedded.mobileprovision
看图2:
mobileprovision.png
3.准备 Developer_code_sign
找到步骤2中mobileprovision文件对应的证书,格式类似 iPhone Distribution: xxxx. (xxxxx) 搞iOS开发的都懂🤓,不懂是不是应该去找原因了🙄
看图3:
证书.png4.已经脱壳的二进制decrypted文件
ipa脱壳也称砸壳,如何脱壳看这里不再解释了,微信砸壳会得到一个WeChat.decrypted文件, 重命名为WeChat,打开终端,输入 chmod 777 ,然后把 WeChat拖到终端上按回车 修改下权限。
看图4:
文件目录.png二、开始操刀修改文件,重签名
搞iOS开发的都知道,在iOS系统上是通过 Bundle identifier 标识 APP 的唯一性的,那么要想在一个手机上装两个微信呢改下Bundle identifier 就可以实现了。
1.解压ipa
打开终端,cd 进入 图4所在目录,然后 运行命令:
unzip WeChat_6.5.2.ipa -d WeChat_6.5.2_unzip
图5:
解压ipa.png
图6:
解压成功.png
图7:
解压的文件目录结构.png
2.替换砸壳了的WeChat二进制文件
图8:
Snip20161229_21.png
图9:
Snip20161229_22.png3.修改 Bundle identifier
找到 包内容的info.plist 文件,修改 Bundle identifier
图10:
Snip20161229_26.png
Xcode 打开编辑修改 Bundle identifier 的内容
图11:
4.删除微信包里面的扩展插件(PS 目前没找到好的办法签名他们,所以暴力删除它们)
图12:
Snip20161229_23.png5.运行脚本,开始签名了,打开终端,cd 进入 图4所在目录,运行
sh ios_resign_from_app_to_ipa WeChat_6.5.2_unzip "iPhone Distribution: xxxx xx., xx. (xxx)" embedded.mobileprovision WeChat_6.5.2-resig.ipa
图13:
Snip20161229_28.png签名成功:
图14:
Snip20161229_29.png
图15:
Snip20161229_30.png6.双击itunes 打开安装,测试打开不闪退。
图16.
网友评论
威武霸气,
霸气侧漏,
侧漏满地,
满地才华。
使用的和博主一样的那个脚本
修改了BundID