【手把手教学】开启iOS app调试模式

来源:互联网 发布:腾讯云域名注册 编辑:程序博客网 时间:2024/05/01 01:30

目标

本文会阐述如何通过使用开发者证书重签的方式实现对iOS app开启调试模式

调试模式开启后可以实现以下功能:
1. 重签后的ipa可以安装在未越狱的iOS设备上
2. 在未越狱的iOS 8.x设备上都可以通过PP助手等工具访问其程序的文档目录
3. 使用XCode对应用进行Debug
4. 对其应用内嵌的UIWebView/WKWebView 可使用Web Insepctor调试其网页
5. 还有什么好处请自我猜想……

工具要求

  1. 一台已越狱的iOS设备
  2. 开发者证书
  3. 可运行OS X 设备

前期准备

  1. 安装Clutch
    在Cydia中添加源 http://cydia.iphonecake.com 后搜索 Clutch进行安装。
    该工具作用是用于脱壳。

  2. 安装OpenSSH
    直接在Cydia进行搜索即可。
    建议参考http://blog.csdn.net/lucky_06/article/details/26396707 使用数据线进行连接

  3. 获取makeDebugApp需要用到的相关脚本:

    git clone https://github.com/zqxiaojin/makeDebugApp.git

  4. 获取开发者证书签名的相关信息
    相关的信息在每次编译时都会有显示,这里我们使用一个最简单的iOS App作为例子进行获取。

    1. check out简单的iOS App工程

      git clone https://github.com/zqxiaojin/SimpleApp.git

      使用XCode打开并且选择设备Target进行一次编译。

    2. 获取Code Sign Identifier
      在XCode界面按照如下截图复制红框内的文本内容:
      获取Code Sign Identifier

      实例中,获取到的文本内容为“CDFBB763F193123456789A473B2867B84DB747A8”。
      建议先找个位置记下来。

    3. 获取 embedded.mobileprovision
      在打开了的SimpleApp工程中,按照下面的图示获取其embedded.mobileprovision文件。(当然也可以直接从Apple Developer下载,具体方法请自行寻找)
      打开编译好的app目录:
      打开编译好的app目录
      在Finder中,在其菜单中选择“Show Package Contents”以浏览其内容:
      显示app内容
      获取embedded.mobileprovision文件:
      embedded.mobileprovision文件
      将embedded.mobileprovision文件复制到先前 check out下来的makeDebugApp的目录下。

    准备工作做好后,我们的在makeDebugApp目录状况如下:
    第一阶段

开始

这里以UC浏览器作为例子,我们的目标是为其开启Web Inspector模式。

  1. 越狱设备上,在AppStore下载并安装好UC浏览器
  2. ssh 到 越狱设备上,执行如下shell命令:

    root# Clutch

    (如果你是第一次执行Clutch,那么会有一些初始化操作,使用默认值即可。)
    执行后Clutch会列出设备中安装的所有App的执行文件的名字,如下图:
    Clutch执行结果
    UC浏览器的执行文件为:UCWEB
    每个app的执行文件的程序名都不相同,如微信则为 WeChat

  3. 继续在设备的shell下,执行如下命令:

    root# Clutch UCWEB
    成功后,得到结果如下图:
    Clutch 成功
    红框部分即为生成的脱壳后的IPA

  4. 使用PP助手,将IPA复制到makeDebugApp文件夹,如下图:
    这里写图片描述

  5. 至此准备工作完成,makeDebugApp目录如下:
    这里写图片描述

  6. 执行makeDebugApp脚本,进行重签:

    用法:
    $ python makeDebugApp.py [ipa路径] [Code Sign Identifier]

    以上述的UC浏览器为例:
    $ python makeDebugApp.py UC浏览器-v9.3.0.326-Jin-\(Clutch-1.4.7\).ipa CDFBB763F193123456789A473B2867B84DB747A8

完成

至此,重签工作完成。
由于使用的证书是你本机的开发者证书,故生成的IPA可以安装到关联的设备上(非越狱设备也可安装)。

最后补上一张在微信内打开公众号“一块去旅行”进行Web Inspector的示意图:
这里写图片描述

如需转载,请列名出处 http://blog.csdn.net/lucky_06/article/details/46954367

0 0
原创粉丝点击