美文网首页iOS开发技术程序员iOS开发
Injection Plugin for Xcode实时在模拟器

Injection Plugin for Xcode实时在模拟器

作者: Frankxp | 来源:发表于2016-03-17 19:57 被阅读335次

    介绍

    Injection Plugin For Xcode 是 Xcode 上的一个插件。利用它可以修改应用代码,实时在模拟器或实机上看到效果而不需要重启应用。

    安装

    下载Injection github地址

    安装后,重启Xcode,会发现在 Product 菜单下多了两个选项:

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

    基本使用

    我们做一个很简单的应用,其有一个 UIButton 和一个 UILabel,当点击 button 后,label 显示一段文本,ViewController 的代码如下:

    运行后,点击按钮,效果如图所示:

    之后我们修改代码,将赋给 label 的字符串改为:

    self.label.text = @"阿布钱多到花不完";

    但区别于一般的使用 CMD+R 来重新编译并运行程序,这次我们使用 control= 这个快捷键来注入。

    注入完成后,修改的类的代码就生效了,点击模拟器中应用的按钮试试。

    真机调试

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

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

    之后就可以正确在真机上使用了。如果依然出现证书错误,尝试删除工程文件夹里的 iOSInjectionProject 目录。

    相关文章

      网友评论

      • Song1025:真机用了这种方法设置还是报错呀。

      本文标题:Injection Plugin for Xcode实时在模拟器

      本文链接:https://www.haomeiwen.com/subject/ymuclttx.html