您的位置:首页 > 产品设计 > UI/UE

UI 调试神器 injection for Xcode 的使用详解

2016-03-09 11:01 465 查看

    injection for Xcode 工具的github地址:点击打开链接

     作为移动端开发的程序员,每次最耗时也最令人烦恼的事情就是,不断的重启模拟器调试程序,查看UI页面是否符合自己的心意。而injected Plugin for Xcode就大大的方便了我们开发。
   
     
Injection Plugin For Xcode 是 Xcode 上的一个插件。利用它可以修改应用代码,实时在模拟器或实机上看到效果而不需要重启应用。

1.下载完之后,打开红圈选中的文件夹。
    
   


2.打开并运行,成功之后即完成了安装。

    


3.安装后重启Xcode,会发现在Product菜单下多了两个选项(注意重启的时候,应该选择load bundle,而不应该选skip bundle,否则不能再Xcode中找到):



然后点击 Product > 你的工程名 > Patch Project for Injection 选项, 之后插件会在 Prefix.pch 和 main.m 中插入两段代码。这不会影响程序原有代码,如果要还原,随时可以通过点击 Revert Injection’s Changes 选项来还原。



4. 此时在main.m中多了几行代码,如图:  


以下的是pch中的(这个地方注意以下就是,再倒入代码的过程中,程序默认识别的是以.pch为结尾的,有的第三方库也是有.pch,如果导入到第三方里面,需要剪切到 Prefix.pch中)



5.基本使用

此时在项目中就可以使用了,使用的时候只是需要在类中加入以下方法就可以了,但区别于一般的使用 CMD+R 来重新编译并运行程序,这次我们使用 control= 这个快捷键来注入。你会发现代码上方出现一个进度条:




实时参数调整

Injection Plugin 还提供了5个变量和5个颜色,分别存在插件提供的全局数组变量 INParameters 和 INColors 中。我们可以在程序使用这两个数组变量,并可以在程序运行过程中实时修改。

我们建立个新工程,这一次,我们通过修改插件提供的一个颜色参数,实时修改应用中 View 的背景色。代码如下:

@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];
[NSTimer scheduledTimerWithTimeInterval:0.1
target:self
selector:@selector(changeColor)
userInfo:nil
repeats:YES];
}

- (void)changeColor
{
self.view.backgroundColor = INColors[0];
}
@end


运行程序,之后点击 Product > 你的工程名 > Tunable App Parameters 选项。



点击第一个颜色,试着调整颜色,看看模拟器发生了什么。




真机调试

真机调试涉及到证书问题,需要告诉 bundle project 正确的证书。可以通过在工程文件中添加以下 RunScript 实现:

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


具体操作如下:



之后就可以正确在真机上使用了。如果依然出现证书错误,尝试删除工程文件夹里的 iOSInjectionProject 目录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ui 调试 ios开发 xcode