美文网首页
InjectionIII , iOS模拟器热更新

InjectionIII , iOS模拟器热更新

作者: Jimmy_N9 | 来源:发表于2019-03-25 16:32 被阅读0次

InjectionIII

概述

injectionIII 工具可以动态加载Swift、Objective-C代码到已经在运行的程序中执行,热加载。该项目由John Holdsworth 提供,是一个开源项目

效果

效果来自源项目


injected.gif

安装使用

  1. App Store 下载 InjectionIII(或到源项目clone 进行构建)
    2.Open file -> Project path
    3.select File Watcher
    openfile.png
    4.添加如下代码到项目的AppDelegate中的func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool
    Before Xcode 10:(swift)
#if DEBUG
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle")?.load()
//for tvOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle")?.load()
//Or for macOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle")?.load()
#endif

After Xcode 10:

#if DEBUG
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection10.bundle")?.load()
//for tvOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection10.bundle")?.load()
//Or for macOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection10.bundle")?.load()
#endif

5.在项目需要修改的代码类中添加如下代码

 @objc func injected(){
        
        print("I've been injected: \(self)")
        
    }

6.修改运行中的程序的代码时,只需要按下Command + S saved, 就所修改的代码就会显示在simulator上

注意⚠️

亲测的该工具适用Simulator

原理

感兴趣的可以看一下这篇文章

相关文章

  • InjectionIII , iOS模拟器热更新

    InjectionIII 概述 injectionIII 工具可以动态加载Swift、Objective-C代码到...

  • Injection

    介绍 InjectionIII允许您在iOS模拟器中以增量方式更新类的方法实现,而无需重建或重新启动应用程序,从而...

  • InjectionIII 成吨的提高iOS开发效率

    InjectionIII允许您在iOS模拟器中以增量方式更新类的方法实现,而无需重建或重新启动应用程序,从而节省开...

  • Flutter使用小结

    如何启动 启用安卓模拟器 启用 ios 模拟器 启动项目 热更新启动方式 不能使用 Hot Reload 的场景 ...

  • iOS动态调试代码利器InjectionIII使用

    1. InjectionIII是什么? InjectionIII是一个能在模拟器上,监听代码变化,不需要rebui...

  • iOS开发-InjectionIII(热重载)

    前段时间看了戴铭大神的一篇《App 如何通过注入动态库的方式实现极速编译调试?》学到了怎么使用InjectionI...

  • react native iOS 热更新(真机运行,打包文件,上

    热更新环境以及插件的安装 这份文档建立在已经能在iOS模拟器上正常运行项目的基础上 参考文章1-code-push...

  • iOS injectionIII

    injectionlll的快速开发UI秒刷新,提高开发效率 1.injection链接使用教程 2.下载方式可以到...

  • InjectionIII使用

    UI调试工具InjectionIII,在模拟器下,使用command + S快捷键可以直接刷新显示最新的代码效果;...

  • iOS热更新

    1.所谓热更新就是指代码不通过重新打包提交到APPStore的方式来更新客户端的执行代码。 一种方式:热修复 为什...

网友评论

      本文标题:InjectionIII , iOS模拟器热更新

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