多米诺骨牌源
最快捷的苹果资讯

在MAC上搭建 iOSOpenDev

准备安装

macOS + Xcode 8.1 下部署好了 iOSOpenDev 的开发环境

1. 确保已经关闭了 macOS 的 SIP

2. 请确保你已经安装好了 brew,并brew install dpkg

3. 安装旧版 theos(新版不支持 iOSOpenDev)

(1)在 ~/.bash_profile 里添加 $THEOS = /opt/theos

(2)执行命令

sudo git clone -b stableversion https://github.com/haorenqq/theos/ $THEOS

(3)安装 ldid

下载编译好的 ldid 放到 /opt/iOSOpenDev/bin 目录下

(3)下载 Specifications.zip 并解压,把 iPhoneOS 开头的四个文件放到(如果没有请自己创建一个)。

/Applications/Xcode.app/Content/Developer/Platforms/IphoneOS.platform/Developer/Library/Xcode/Specifications

iPhone Simulator 开头的另外四个文件放入下面的目录下(如果没有,请同样创建一个)。

/Applications/Xcode.app/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Specifications

(4)在下面的目录下创建 usr 文件夹,usr 文件夹下创建 bin 文件夹

/Applications/Xcode.app/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/

创建好的目录应该是

/Applications/Xcode.app/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin

开始安装

1. iOSOpenDev 1.6-2.dmg(使用本站资源服务器下载)

2. 安装过程中请参考下这篇帖子:

https://github.com/kokoabim/iOSOpenDev/wiki/Troubleshoot 容易出现的问题在这里都有解释。

3.安装成功后,找到 ~/.bash_profile 添加环境变量

export iOSOpenDevPath=/opt/iOSOpenDev
export iOSOpenDevDevice= 真机调试的ip地址
export PATH=/opt/iOSOpenDev:$PATH
export PATH=/opt/local/bin:$PATH
export PATH=/opt/local/sbin:$PATH

4. 给 ssh 添加签名,在终端里执行 /opt/iOSOpenDev/bin/iosod $iOSOpenDevDevice,按照步骤进行签名,签名后要记得先再终端里连接一遍,输入秘钥,登陆成功后再尝试编译。

Hello World

请在测试机上确保如下插件已被安装

Core Utilities
Core Utilities(/bin)
diskdev-cmds
file-cmds
system-cmds
Mobileterminal
openSSH
sshpass
preferencdloader
substrate safe mode
syslogd to /var/log/syslog

打开 Xcode 选择 Logos Tweak,创建一个项目

2016111314181328

 

创建好后会出现一个 .xm 和 .mm 文件,不要编辑 .mm 文件

/opt/iOSOpenDev/lib 下找到 libsubstrate.dylib,在 TARGETS > Build Phases > Link Binary With Libraries 下将 libsubstrate.dylib 拖进去

在 TARGETS > Build Settings 找到iOSOpenDevDevice选项,填入测试机的 WIFI IP,准备工作就完成了~

下面你需要添加 UIKit.framework,清空 .xm 的内容输入

#import <UIKit/UIKit.h>

%hook SpringBoard

- (void)applicationDidFinishLaunching:(id)application{
%orig;
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Welcome"
                                                    message:@"Hello World"
                                                   delegate:nil
                                          cancelButtonTitle:@"OK"
                                          otherButtonTitles:nil];
    [alert show];
    [alert release];
}
%end

然后菜单里点击 Product> Build For > Profiling,等待测试机注销,最后 AlertView 将会弹出,部署工作也就全部完成了



未经允许不得转载:多米诺骨牌 » 在MAC上搭建 iOSOpenDev
分享到:

评论 抢沙发

提交评论

  •   昵称 (必填)
  • 邮箱 (必填)
  • 网址 (选填)