如何用未越狱手机安装ipa文件(更新版)

本文详细介绍了如何在未越狱的iOS设备上安装IPA文件,包括理解安装原理、步骤以及如何自动化这一过程。核心在于利用开发者证书进行重签名,以绕过系统签名验证。虽然此方法可安装大多数IPA,但对于内部有安全校验的APP则无法安装。
摘要由CSDN通过智能技术生成

前言

之前写过一篇非越狱手机安装ipa包的方法,然而现在已经不能用了,不仅会报警告“–resource-rules has been deprecated in Mac OS X >= 10.10”,而且苹果在iOS8.1.3系统以后加强了对ipa安装包签名的验证,主要区别在于ipa唯一标识在原有Bundle Identifier的基础上增加了证书ID,也就说安装包和手机上已安装APP的Bundle Identifier即使一致,如果两者签名的证书ID不相同,那么安装包也无法正常安装

原理

其实安装ipa最核心的在于签名,因为iOS上的app运行前系统都会对其进行签名校验,来保证是否被篡改或者合法,证书过期或者无效时,点击app图标会直接闪退。主要分为三类,一种是个人/团队开发者证书签名,另一种是企业证书签名,比如各种xxx助手之类的,主要区别在于企业开发者不能通过appstore途径发app,但是可以直接无上限的分发app(in-house 发布),个人开发者可以通过Appstore发布,同时有一些别的特权。还有一类是教育帐号本文不做阐述。

步骤

我假定你已经是一名iOS开发者,并且加入了苹果开发者计划,电脑已经装了开发证书和发布证书。

  • 进入Member Center,建立一个新的App ID,并创建一个新的Provisioning Profiles

  • 解压你需要重签名的ipa包(友情提示,去xxx助手找有很多哦),删除包内的_CodeSignature目录

  • 下载之前新建的Provisioning Profiles,重命名为embedded.mobileprovision替换ipa包内的同名文件

  • 修改info.plist中的包名(经实测不是必须)

  • 创建entitlements.plist,这是一个授权文件,其授权机制决定了哪些系统资源在什么情况下允许被一个应用使用。简单的说它就是一个沙盒的配置列表,上面列出了哪些行为被允许,哪些会被拒绝。很可能你已经猜到授权机制也是按照 plist 文件格式来列出的。Xcode 会将这个文件作为 –entitlements 参数的内容传给codesign,在 Xcode 的 Capabilities 选项卡下选择一些选项之后,Xcode 就会生成这样一段 XML。 Xcode 会自动生成一个.entitlements 文件。此处我们的entitlements.plist文件如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值