一、项目搭建
-
创建一个ios项目
image.png -
为了方便可以通过修改包而修改应用的图标,项目架构中,需要单独出来图标文件 eg:icon@2x.png ,icon@3x.png
image.png
(1)项目架构设置
(2)配置文件修改:方便可以修改应用图标
image.png
二、ipa包修改
1.准备工作,准备需要重签名的证书--具体可以去苹果开发者里面生成证书(此处不做介绍),并修改名字为embedded.mobileprovision 和 Entitlements.plist文件(下面介绍,用于重签名信息配置).
2.获取生成的ipa包并解压
(1)在终端获取到ipa包的路径
命令: cd xxxx/xxx/xx eg:cd /Users/mzou/Desktop/
(2) 解压ipa包
命令: unzip xxxx.ipa eg: unzip TestProject.ipa
3.进入解压ipa包后生成的Payload文件夹中并查看xxx.app包内容删除相关的配置文件和替换证书
(1)进入xxx.app包里面
命令:cd xxxx.app eg:TestProject.app
(2)删除_CodeSignature文件(原签名配置文件)
命令: rm -rf _CodeSignature
(3)替换原有的证书文件
先删除原有的证书文件:rm – rf embedded.mobileprovision
然后拷贝已下载后的证书文件(已改名的证书文件)
cp xxxxxx.mobileprovision xxxx/xxx/Payload/TestProject.app
mv xxxxxxx. mobileprovision embedded.mobileprovision // (改名)
4.创建entitlements.plist ,并且配置开发环境
(1)先创建xml文件
命令:touch entitlements.xml
(2):编辑xml文件,添加如下文件
命令:vim entitlements.xml
进入后,按i进行编辑,配置以下文件
image.png
编辑内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>application-identifier</key>
<string>XXXXXXXX</string>
<key>com.apple.developer.team-identifier</key>
<string>XXXXXX</string>
<key>get-task-allow</key>
<false/>
<key>keychain-access-groups</key>
<array>
<string>XXXXXX</string>
</array>
</dict>
</plist>
编辑完后,保存文件退出。
命令,先esc ->:wq
(3)编辑完xml文件后,把xml文件转成plist文件
命令: mv entitlements.xml entitlements.plist
5.修改info文件
5.1:先把Info.plist 转成xml文件
命令:mv Info.plist Info.xml
5.2:然后通过vim进行修改info.xml文件
命令:vim Info.xml
5.3必须修改Bundle ID
image.png
介绍以下常用的key
<key>CFBundleDisplayName</key> //应用安装后展示的应用名称
<key>CFBundleName</key> //应用名称,当不设置DisplayName时显示
<key>CFBundleIdentifier</key> //应用BundleID ,必须与证书一致
<key>CFBundleShortVersionString</key> //应用短版本号
<key>CFBundleVersion</key> //应用版本号
修改完成后,保存修改的文件,然后把xml文件重命名为plist文件
命令:mv Info.xml Info.plist
6.修改应用图标和启动图片(需要的可进行修改)
通过命令,查看包里面的文件:
命令:ls – al
image.png
查看本地文件的,如上图所示,只需要把需要替换的图片和尺寸一致,然后改相同的名称进行替换 (copy替换),此时即可---应用图标的替换,必须项目如步骤一的项目配置一致,否则不能修改成功
三、重签名
1.以上文件修改完成之后,返回Payload文件所在的路径
命令 cd ..
2.通过命令进行重签名(必须有xcode的环境才能重签名成功,服务器端重签名的需要安装相关的环境,此处不介绍)。
命令:codesign -f -s "XXXX" --entitlements entitlements.plist entitlements.plist
image.png
当出现以下的信息时候,证明签名成功:
image.png此时包里面出现已重新签名的信息
image.jpeg注:如果出现其他信息,建议检查步骤或重新配置
四:打包重签名后的ipa包
1.先返回Payload所在的上一层路径
命令:zip -r xxx.ipa Payload eg: zip -r 测试应用.ipa Payload
2.打包完成后,可通过手机或者蒲公英等第三放应用托管平台检测。
大千世界,求同存异;相遇是缘,相识是份,相知便是“猿粪”(缘分)
From MZou
网友评论