iOS 开发利器 InjectionIII
2022-06-11 本文已影响0人
笨驴爱吃胡萝卜
解决问题
iOS 开发 特别是OC 语言开发,每次都要run 对改动的部分进行观察,已经落后 flutter / SwiftUI / 安卓等 UI 开发模式的效率问题.
这个InjectionIII 出了 好几代了,我记得13年的时候就有了,在项目里面有的用 ,有的公司不用。
经历了这么多年,还是挺好的,扛住了历史的考验,和语言一样,时间是最好的老师
使用
官方原码
这里说明一下,别看一堆issues 。都是历史积累
1. appstore 下载 app
Mac 版本2. 代码里面嵌入
这里说明一下 ,一共两种 嵌入模式
方法 一 在controller 里面 嵌入 这个代码,每次保存代码的时候 就会热刷新
- (void)injected {
NSLog(@"injected Some thing....");
[self viewDidLoad];
}
方法 二 通过通知的方式
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (void)injectedAction {
// 这里调用需要执行的代码
#ifdef DEBUG
[self viewDidLoad];
#endif
}
在viewdidload 里面
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(injectedAction) name:@"INJECTION_BUNDLE_NOTIFICATION" object:nil];
self.view.backgroundColor = UIColor.redColor;
[self layout];
// Do any additional setup after loading the view.
}
我的项目是OC 项目 ,所以 两个方法我都试了,但是不知道为啥第一种 不起作用
3. open 自己项目文件 到 Inject
image.png之后进行cmd + S就能看到效果....
注意
1 记得把debug加上
2 如果在基类里面 加 这个,记得加个开关 同组人员可能有的不用这个 不一定他写UI
3 这个 配合Charles 的maplocal. 数据 Mock + UI 热更新,基本你的效率Up+++++🔥🔥🔥