美文网首页
iOS_界面开发 通过InjectionIII工具实现iOS A

iOS_界面开发 通过InjectionIII工具实现iOS A

作者: Eyes_cc | 来源:发表于2020-12-14 15:03 被阅读0次
    • 在App Store搜索InjectionIII
    • 打开InjectionIII
    • 在AppDelegate添加load代码
    #if DEBUG
    
        // for iOS
        Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle")?.load()
        
        // for tvOS:
        // Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle")?.load()
        
        // for macOS:
        // Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle")?.load()
        
    #endif
    
    • controller文件添加代码
    @objc func injected(){
    
     print("I've been injected: \(self)")
    
    }
    

    运行项目(首次使用InjectionIII会弹出来一个选择框,让你选择项目的根路径),也可以通过Open Project添加主工程目录。
    如果是组件化的话,可以通过Add Directory添加需要检查的子工程。
    然后我们就可以在 - (void)injected 方法中调试代码,每次改完之后在当前文件下按下 COMMAND + S 保存,就可以在模拟器看到更改代码之后的效果。不需要重新运行整个项目。

    • 显示如下内容则表示连接成功,如下图:
    • UI修改后保存,二级页面重新进入即可,(一级页面我们这里是通过切换主题来更新的),则可看到修改后的效果。
    💉注射失败以及使用总结【该工具只对模拟器有效】

    1.确认InjectionIII监听的目录和 Xcode 项目根目录是否一致
    2.看下有没有保存成功,也就是针筒的颜色由蓝色变成橙色
    3.确认Injection connected有没有打印,也就是说有没有真的运行这个工具
    4.如果控制台有log显示Error loading,切换模拟器
    5.如果修改的是cell / item上面的内容,需要上下滚动才能看到效果
    6.如果修改的是一个普通页面的内容,最好是退出这个页面,再进入这个页面

    链接:https://www.jianshu.com/p/1d2716f2f5ef

    相关文章

      网友评论

          本文标题:iOS_界面开发 通过InjectionIII工具实现iOS A

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