首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向开发人员IPA辞职发布IPA

向开发人员IPA辞职发布IPA
EN

Stack Overflow用户
提问于 2016-03-14 14:03:12
回答 1查看 511关注 0票数 0

我要求将IPA从Distribution provisioning profile重新签名为developer provisioning profile。

我已经试过iResign了。但I iResign未能完成分发给开发人员配置文件的重新签名。

此要求的目的是在仪器中对IPA进行性能测试。

EN

回答 1

Stack Overflow用户

发布于 2016-05-21 04:09:13

我假设你已经从苹果(developer.apple.com)生成了一个单独的配置文件。

对于这些步骤,您可能希望将您的ipa和配给配置文件放在一个空文件夹中。

解压缩ipa,替换嵌入式配置文件:

代码语言:javascript
复制
unzip "App.ipa"
rm -f "Payload/App.app/*.mobileprovision"
cp "DEV.mobileprovision" "Payload/App.app/embedded.mobileprovision"

如果您的开发人员配置文件使用不同的捆绑包ID或BuildTeam:

代码语言:javascript
复制
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier <dev bundle ID>" Payload/*.app/Info.plist
/usr/libexec/PlistBuddy -c "Set BuildTeam <team ID>" Payload/*.app/AppInfo.plist

提取授权并将其放入临时plist中,如果您使用的是通配符配置文件,还要将通配符替换为您的捆绑ID:

代码语言:javascript
复制
security cms -D -i Payload/*.app/embedded.mobileprovision > PP.plist 2>&1
sed -i '' "s/\*/<bundle ID>/g" PP.plist
/usr/libexec/PlistBuddy -x -c "Print Entitlements" PP.plist > entitlements.plist 2>&1

代码签名应用程序,重新打包ipa,删除临时有效负载和plist:

代码语言:javascript
复制
/usr/bin/codesign --force --preserve-metadata=identifier,entitlements --sign "<signing ID>" --entitlements entitlements.plist -i "<bundle ID>" Payload/*.app
zip -r "ShinyNewApp.ipa" Payload
rm -rf Payload
rm -f *.plist
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35980512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档