重新签署ipa(Iphone)

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (48)

目前,我使用xcodebuild和xcrun一起构建我的所有应用程序,没有任何问题。

我从不同的人那里收到了几个ipa文件,我想用一个企业帐户而不是公司帐户重新签名。

我的问题是,当我试图辞职时,应用程序不会安装在我的设备上(而且应该安装,因为它是企业版的)。错误信息在设备上(而不是在iTunes中),它简单地告诉我它无法安装应用程序。

这可能是可能的。我面临的问题是,它似乎没有嵌入移动供应配置文件(使用xcrun),这可以用CoDesign工具控制,还是可以用xcrun重新签名?

用我现在的辞职剧本

  • 解压缩app.ipa
  • appname=$(ls有效负载)
  • xcrun-sdk iphoneos PackageApplication-s“$Providing”_简介“”$project_DIR/有效载荷/$appname“-o”$project_dir/app-regened.ipa“---签署”$备货“_配置文件---嵌入“$MobeProvie”
提问于
用户回答回答于

假设从另一个开发人员那里接收到一个应用程序(例如MyApp.ipa),并且您希望能够在您的设备上安装和运行它(通过使用ideviceinstaller例如)。

准备新签名资产

第一步是获得配置文件,其中包含您希望安装和运行的所有设备。 确保配置文件包含您在钥匙串访问中安装的证书(例如iPhone Developer:Some Body(XXXXXXXXXX))。 下载配置文件(MyProfile.mobileprovision),以便可以替换应用中嵌入的配置文件

接下来,我们将准备一个权利文件,以包括在签名中。打开终端,运行以下命令。

$ security cms -D -i path/to/MyProfile.mobileprovision > provision.plist

这将创建一个xml文件,描述供应配置文件。接下来,我们要将应享权利提取到文件中。

$ /usr/libexec/PlistBuddy -x -c 'Print :Entitlements' provision.plist > entitlements.plist

替换配置配置文件并辞职应用程序

如果使用的是.ipa文件,首先,解压缩应用程序(如果有.APP相反,可以跳过这个步骤)。

$ unzip MyApp.ipa

工作目录现在将包含Payload/Payload/MyApp.app/。接下来,删除旧的代码签名文件。

$ rm -rf Payload/MyApp.app/_CodeSignature

用自己的配置文件替换现有的配置文件(即Embedded.MobileProviding)。

$ cp path/to/MyProfile.mobileprovision Payload/MyApp.app/embedded.mobileprovision

现在用配置文件中包含的证书和前面创建的ghtlements.plist对应用程序进行签名。

$ /usr/bin/codesign -f -s "iPhone Developer: Some Body (XXXXXXXXXX)" --entitlements entitlements.plist Payload/MyApp.app

你会发现这些Payload/MyApp.app/Frameworks.,如果应用程序是用SWIFT编写的,或者它包含任何附加的框架,这些都必须辞职,否则应用程序将安装,但不会运行。

$ /usr/bin/codesign -f -s "iPhone Developer: Some Body (XXXXXXXXXX)" --entitlements entitlements.plist Payload/MyApp.app/Frameworks/*

现在可以重新压缩应用程序。

$ zip -qr MyApp-resigned.ipa Payload

已完成

现在可以删除Payload目录,因为应用程序(MyApp.ipa)和您的辞职版本(MyApp-recened.ipa)。现在,可以将MyApp-recened.ipa安装在配置文件中包含的任何设备上。

热门问答

springboot项目启动报错找不到ConfigurationPropertiesBean?

添加依赖:https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-context/2.2.0.RELEASE <!-- https://mvnrepository.com/artifac...... 展开详请

使用jenkins配合命令进行加固,在加固过程中提示40171,起码50%的概率出现?

whileideath

腾讯 · 运营开发工程师 (已认证)

web互助开发群:953701926,禁止广告,招聘行为。
推荐
内部返回数据解析失败(查毒) 指的是在apk进行加固之前会进行病毒检测,如果检测出现病毒,违法等应用将拒绝加固。 目前是该引擎存在故障。 ... 展开详请

腾讯加固助手不能下载了吗?下载地址在哪里?MAC可以下载吗?我看只能在网页上加固,自己签名。?

腾讯云@移动安全

腾讯 · 移动开发工程师 (已认证)

腾讯云移动安全前端开发
推荐

乐固客户端已下线,可以使用移动应用在线加固https://console.cloud.tencent.com/ms/reinforce/list

可以自行签名打渠道包。

腾讯云物联网设备端 C-SDK中coap sample运行失败getaddrinfo error?

DylanRichard

腾讯 · 产品经理 (已认证)

万物互联的时代,欢迎来到IoT的世界
推荐已采纳

用coap必须打开TLS,现在云端只支持DTLS的coap连接

节点数量如何计算?

吴楠NancyWU

腾讯云 · 高级产品经理 (已认证)

腾讯云区块链产品经理,与区块链一同成长,欢迎交流
推荐

建议网络测试可使用一个组1个节点配置,根据组织多少来定测试规模;企业应用以1个组织2个节点为基础起步,保持组织内的高可用,节点数量扩展根据组织数量和交易使用量增加,一个区块链网络内建议最多不超过100个节点。谢谢您的提问

关于云直播的几个问题,望大佬解惑?

学生路人
推荐

1 海外单独计费

2 地址都是自己算的 可以变也可以不变

3 这个接口是拉流转推的 ,和播放不是一个东西哈 。

所属标签

扫码关注云+社区

领取腾讯云代金券