2014-01-23 16:57

iOS越狱插件制作教程(一)

一、环境搭建

1、去http://iosopendev.com/下载iOSOpenDev,下载后安装。

2、打开终端,输入bogon:~ apple$ open ~/.bash_profile,之后在iOSOpenDevDevice=后面输入你的手机名称。位置在设置-通用-关于手机-名称。例如我的iPhone名称是iPhone,那应该在这里填iPhone.local。

QQ20140123-1@2x

3、完成后输入bogon:~ apple$ iosod sshkey,如果无法连接,先检查你的iPhone是否安装了OpenSSH,然后检查第二步中iPhone的名称是否正确。(默认SSH密码为alpine)

4、(可选)Xcode里新建一个iOSOpenDev的CaptionHook插件,Product-Build for-Profiling。你的iPhone就会自动注销,完成后你的设置里就会有你命名的新插件了。

5、安装Theos。运行下面的脚本把Theos从库中下载到本地(你可以修改/opt/theos为任意你想要的路径)。

sudo git clone https://github.com/DHowett/theos /opt/theos

下载完成之后,为了方便起见,我们再配置一下THEOS环境变量:

export THEOS=/opt/theos

二、HOOK

1、下载Class-dump 3.5。http://stevenygard.com/

2、HOOK SpringBoard.命令 class-dump -H /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/System/Library/CoreServices/SpringBoard.app/SpringBoard -o ~/Desktop/SpringBoard 这样就可以在桌面导出SpringBoard的类。

3、当然,你也可以直接git clone在GitHub上别人做好的库文件。

sudo git clone git://github.com/rpetrich/iphoneheaders.git

4、The SpringBoard header files are placed in /opt/iOSOpenDev/include/SpringBoard.

为啥要加sudo呢?因为我的iOSOpenDev就放在/opt里,需要sudo权限才能执行操作。

5、再运行一次会提示你缺IOSurfaceAPI.h这个文件,怎么做类?

cd /opt/iOSOpenDev/include/IOSurface/

sudo curl -O -k https://raw.github.com/javacom/toolchain4/master/Projects/IOSurfaceAPI.h

6、去https://github.com/MP0w/iOS-Headers下载头文件。

Frameworks+PrivateFrameworks -> iOSOpenDev/Frameworks

SpringBoard -> iOSOpenDev/include

三、新建一个插件

1、使用$THEOS/bin/nic.pl新建。

未完待续。

教程为个人记录之用,可能有点混乱,仅供大家做参考。

转载请保留版权。