iOS UI调试神器,插件injection for Xcode使用方法

项目愈来愈大,代码编译时间愈来愈长,你是否是早已经厌倦了改一点点UI布局就要从新编译一次项目的过程,咱们一分钟几百万上下的,怎能被编译浪费掉珍贵的时间。使用injectionforxcode这款插件,提升咱们编程时的效率。git

先上插件的GitHub地址:injectionforxcodeGitHub地址github

官方演示

看看强大的效果,即写即看到效果:编程

安装

咱们能够经过Alcatraz来安装,若是安装成功没有找到多出来的两个选项,咱们经过下载插件-->打开工程,编译后,重启Xcode。xcode

再次打开Xcode咱们能够看到Product菜单下多出了两个选项iphone

试验

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.view.backgroundColor = [UIColor whiteColor];
    [self setupTableView];
}

-(void)injected{
    [self viewDidLoad];
}

要注意的是:injected,Corl + = 更新界面后,就能够看到效果。ide

真机调试

另外,咱们想要真机调度,网上说添加脚本这些,我试了都不行。另外找到了解决方法布局

因为咱们在模拟器里运行了,能够看到目录下多了一个文件夹。ui

第一步:

点击”Patch Project for Injection“,插入真机的相关代码。若是下次咱们不须要真机调试了,直接点击”Revert Injection's Changes“就能够消除了。spa

插入的相关代码,咱们能够在main.m文件中看到,以下图:插件

第二步 方法一:

咱们Crol+=运行后,发现报错,以下:

基本意思是:真机调试,须要用户证书,但咱们的系统上绑定了多个证书,让咱们在Debug-iphoneos下绑定一个咱们须要调试的真机证书便可。

咱们打开文件目前,会发现多了一个”iOSInjectionProject“文件夹,咱们须要找的是identity.txt这个文件

打开后,看到

以后,咱们在选中绑定须要调试的真机证书,直接command + c 复制,手打的须要注意空格。

粘贴到identity.txt下。注意不要手敲,有空格的。

保存后,咱们再control + =,已经成功。

第二步 方法二:

除了手动改identity.txt方式以外,还能够经过新增运行脚本方式。

一、先去 project-> Build Phases 添加一个 Run script,内容为:

echo "$CODESIGNING_FOLDER_PATH" >/tmp/"$USER.ident" && echo "$CODE_SIGN_IDENTITY" >>/tmp/"$USER.ident" && exit;


二、修改 工程 target 的 Code Siging ,记住只修改 Any iOS SDK 后面的两个为 跟咱们Xcode 中同样。

三、而后到咱们的工程目录,给 iOSInjectionProject 这个文件夹删掉。删掉以后,com + shift + k, clean 一下工程,在运行到手机上,没什么问题的话,真机上就能热调试了。

四、咱们打开identity.txt文件,看到里面自动帮咱们添加上了证书。

报错处理 

1.没有选中要编译的文件。咱们须要选择当前须要调试的controller文件。

2.运行没有效果。加上:

-(void)injected{
    [self viewDidLoad];
}

 3.真机调试,仍是报证书不对,如:

请检查一下,你的须要真机调试的证书,是否是安装了两次,若是安装了两次,也会提示说证书选择有误,请只保留其中一个。

4.IP地址不正确

 

这个错误指的是没有权限操做IP。

咱们在真机调试的时候,会在main.m中插入如下代码:

第一个和第二个IP地址,指向的是外网的IP。外网的IP,咱们是没有权限操做的,只须要把这两个IP删除掉便可。如

static const char *_inIPAddresses[] = {"192.168.1.105", "127.0.0.1", 0};

 

破解处理

该插件只容许咱们使用两周,若是使用到期,咱们只须要删除 iOSInjectionProject 这个文件夹,从新运行又可使用了。

相关文章
相关标签/搜索