文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

iOS修改ipa并重新签名打包

2023-09-07 09:34

关注

1. 解压ipa包

在cmd终端,cd到ipa所在目录下,输入以下命令:

## test.ipa:需要解压的ipa文件#unzip -q test.ipa

解压后当前目录下生成 Payload 文件夹,在对应的app文件右键->显示包内容,查看app内容

2. 修改ipa信息

现在可以修改app里面的信息,修改应用名只需要修改info.plist即可,info.plist文件中找到CFBundleDisplayName和CFBundleName,修改对应的值保存即可 

修改版本号只需要修改info.plist文件中CFBundleShortVersionString和CFBundleVersion对应的值 

修改包名只需要修改info.plist文件中CFBundleIdentifier对应的值

修改应用图标只需要替换对应的图标文件

3. 重新签名并打包ipa

在 终端输入以下命令移除旧的签名信息

rm -r -f Payload/test.app/_CodeSignature

将签名的配置文件 developer.mobileprovision 放入当前文件夹,使用以下命令生成plist文件:

## developer.mobileprovision:签名配置文件# ProvisioningProfile.plist: 解码生成的plist文件#security cms -D -i developer.mobileprovision > ProvisioningProfile.plist

使用以下命令从生成的plist文件中提取生成权限相关的plist文件:Entitlements.plist

/usr/libexec/PlistBuddy -x -c 'Print Entitlements' ProvisioningProfile.plist > Entitlements.plist

输入命令将签名配置文件 developer.mobileprovision 拷贝并重命名放入对应的app包内

## developer.mobileprovision: 签名配置文件#cp developer.mobileprovision Payload/test.app/embedded.mobileprovision

如果存在依赖库和框架,使用以下命令对依赖库和框架进行签名

## distributionCertificate:签名使用钥匙串中证书的名称#if [[ -e Payload/test.app/Frameworks ]]; then  cd Payload/test.app/Frameworks  echo "Resigning embedded Swift libraries..."  swiftLibraries=$(find . -name '*dylib')  SDK_PATH="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos/"  for dylib in $swiftLibraries; do    codesign -f -s distributionCertificate "$dylib"  done  frameworks=$(find . -name '*framework')  echo "Resigning embedded frameworks..."  for framework in $frameworks; do    codesign -f -s "distributionCertificate "$framework"  done  cd ../../..fi

使用以下命令对修改后的app包进行签名并重新打包成新的ipa

## distributionCertificate:签名使用钥匙串中证书的名称#codesign -f -s distributionCertificate --entitlements Entitlements.plist Payload/test.app## modify.ipa: 新生成的ipa文件#zip -q -r modify.ipa Payload SwiftSupport Symbols

最终生成的modify.ipa就是我们最终要用的ipa 文件

来源地址:https://blog.csdn.net/jxfcwys/article/details/126937538

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯