博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS UI调试神器,插件injection for Xcode使用方法
阅读量:6584 次
发布时间:2019-06-24

本文共 1785 字,大约阅读时间需要 5 分钟。

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

先上插件的GitHub地址:

官方演示

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

安装

我们可以通过来安装,如果安装成功没有找到多出来的两个选项,我们通过下载插件-->打开工程,编译后,重启Xcode。

再次打开Xcode我们可以看到Product菜单下多出了两个选项

试验

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

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

真机调试

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

由于我们在模拟器里运行了,可以看到目录下多了一个文件夹。

第一步:

点击”Patch Project for Injection“,插入真机的相关代码。如果下次我们不需要真机调试了,直接点击”Revert Injection's Changes“就可以消除了。

插入的相关代码,我们可以在main.m文件中看到,如下图:

第二步 方法一:

我们Crol+=运行后,发现报错,如下:

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

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

打开后,看到

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

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

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

第二步 方法二:

除了手动改identity.txt方式之外,还可以通过新增运行脚本方式。

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

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

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

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

4、我们打开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 这个文件夹,重新运行又可以使用了。

 

转载地址:http://iwano.baihongyu.com/

你可能感兴趣的文章
Python PyPI中国镜像
查看>>
centos 设置静态IP
查看>>
[Angularjs]系列——学习与实践
查看>>
js -- canvas img 封装
查看>>
转 我们工作的动力是什么 工作最终是为了什么?
查看>>
测试一个网站的最大并发量并发数并发用户
查看>>
适配器模式(数据库方面)支持不同的数据库连接
查看>>
CF456B Fedya and Maths 找规律
查看>>
转载:Beginning WF 4.0翻译——第三章(流程图工作流)
查看>>
mysql alter table
查看>>
芯片测试
查看>>
在源代码中插入防止盗版代码片段的方式
查看>>
hdu 3367 Pseudoforest(最大生成树)
查看>>
一个人,一则故事,一份情愫,一个世界……
查看>>
ffserver联合ffmpeg建立媒体服务器
查看>>
删除浏览器浏览器删除cookie方法
查看>>
微软URLRewriter.dll的url重写的简单使用(实现伪静态)
查看>>
leetcode -- Combination Sum II
查看>>
1z0-052 q209_7
查看>>
PIN码计算锦集
查看>>