通过Xcarchive或ipa重签名

1. 修改 .xcarchive 的 Info.plist

此处, 如果项目 Bundle Identifier 需要发生改变, 则修改 CFBundleIdentifier 对应的值, 并将 SigningIdentity 改成 Bundle Identifier 对应的证书, 关于此处SigningIdentity的值, 可在钥匙串中找到对应的证书, 查看其信息

2. 修改 App Extension 相关信息

此步是对于项目 target 中如 notification extension 等从属 target, 如果没有 App Extension , 直接可以跳过此步, 查看下一步 修改主target相关信息 。

通过文件夹打开 YourAppName.xcarchive/Products/Applications/YourAppName.app/PlugIns/YourAppNameNotificationServiceExtension.appex , 这里不是标准文件夹, open 命令似乎不起作用,

2.1 修改 Info.plist 相关信息

App Extension 的 Bundle Identifier 是 App 的 Bundle Identifier 加上其对应后缀, 如 notificationserviceextension 。
修改 Bundle Identifier 为对应的值, 这里对应的值是指之前修改 .xcarchive 目录中 Info.plist 的 Bundle Identifier 对应, 如 com.test.www , 这里便是 com.test.www.notificationserviceextension。

2.2 替换 Provisioning Profile

将对应的 Provisioning Profile 拷贝到该目录下替换原来的 Provisioning Profile , 改成相同的文件名 embedded.mobileprovision 。

2.3 修改 archived-expanded-entitlements.xcent

我们通过xcode打开archived-expanded-entitlements.xcent, 其本质就是plist文件,
格式是 teamId.bundle identifier 。

2.4 重签名

用对应的证书对 App Extension 重新签名, 这里的 YourCetificateName 依旧是修改 .xcarchive的Info.plist 里的证书名

codesign -f -s “YourCetificateName” YourAppNameNotificationServiceExtension.appex

3. 修改主target相关信息

与上一步修改 App Extension 步骤基本相同, 只是少一步, 不用修改 archived-expanded-entitlements.xcent 。

3.1 修改Info.plist的相关信息

进入.app目录, 修改Info.plist的Bundle Identifier, 使其与.xcarchive文件对应。
你也可以修改其他一些值, 如网络环境, 是测试环境, 还是生产环境, 这里只是抛砖引玉。事实上, 修改网络环境有方便的方法, 如通过读取粘贴板的文本来切换, 或者写一个辅助程序来打开我们的App, 从而通知切换环境。

3.2 替换Provisioning Profile

将对应的 Provisioning Profile 拷贝到该目录下替换原来的 Provisioning Profile , 改成相同的文件名 embedded.mobileprovision 。

3.3 重签名

用对应的证书对 .app文件 重新签名, 这里的 YourCetificateName 依旧是修改 .xcarchive的Info.plist 里的证书名。

codesign -f -s “YourCetificateName” YourAppName.app

codesign -f -s “iPhone Distribution: Shanghai Laiyifen Co., Ltd.” /Users/marshal/Downloads/WDZForAppStore\ 2019-8-13,\ 11.04\ AM.xcarchive/Products/Applications/WDZForAppStore.app

4. 导出包

xcodebuild -exportArchive -archivePath YourAppName.xcarchive -exportPath $(pwd) -exportOptionsPlist YourExportOptionsPlistPath

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值