Android Studio 2.0 Instant 运行 不工作
Android Studio 2.0 Instant Run Not Working
即时 运行 这一新功能并不总是像描述的那样工作。
我只是在文本和 Instant 运行 中修改了一种油漆颜色,它会重新启动 activity!但是在修改了一些其他代码之后,Instant 运行 工作得很好。
我错过了什么吗?
Instant 运行 看起来是我们工具库中的一个很棒的工具,请记住它是 Android Studio 2.0 的新增功能,它是仍在预览(金丝雀频道),因此可能会有一些问题。正如 Google 所说,他们计划在未来几个月内对其进行改进。在撰写本文时,支持以下内容:
+--------------------------------------+-----------------------------------------+
| Code Change | Instant Run Support |
+--------------------------------------+-----------------------------------------+
| Change instance method implementation| Supported |
| Change static method implementation | |
| Add or remove a class | |
|--------------------------------------|-----------------------------------------|
| Add, remove, or change | Supported but requires an Activity |
| a string resource | restart. |
+--------------------------------------+-----------------------------------------+
和here是Instant 运行 目前不支持的一些代码更改:
- Add/remove/change 注释
- Add/remove/change一个实例字段
- Add/remove/change 静态字段
- Add/remove 静态方法签名
- 更改静态方法签名
- Add/remove一个实例方法
- 更改实例方法签名
- 正在更改 parent class
当前 class 继承自
- 更改已实现接口列表
- 正在更改 class
的静态初始值设定项
我在测试 Instant 运行 时也有类似的经历,但现阶段这是意料之中的事情。嘿,it didn't even work few times 在 Android 开发者峰会期间代表 Dave Burke ;)
gradle apt 用法如何,例如apply plugin: 'com.neenbedankt.android-apt'
?
使用 apt 是否会阻止 Android Studio Instant 运行 热交换代码?
在我的情况下,我使用 Dagger 2 和 Instant 运行 似乎不起作用....我是否遗漏了什么?
编辑: 不 - 它不! :) 我的安装显然遗漏了一些东西——就像在 Dave 的演示中一样。 Instant 运行 在 2.0 预览版 3b 上似乎仍然不稳定...
即时 运行 功能需要一些规则;
- Android gradle 版本的插件必须为 2.0.0 或更高版本
minSdkVersion
必须为 15 或更高
- 同时,如果您的应用程序使用 multidex 支持 (
multiDexEnabled true
),则 minSdkVersion
必须为 21 或更高。否则,android studio 会禁用 Instant 运行。
参考:
https://developer.android.com/studio/run/index.html#instant-run
https://developer.android.com/studio/build/multidex.html#about
但我仍然可以在我的项目中使用即时 运行 的热插拔功能,即使它的最低 sdk 版本是 14。
即时 运行 这一新功能并不总是像描述的那样工作。 我只是在文本和 Instant 运行 中修改了一种油漆颜色,它会重新启动 activity!但是在修改了一些其他代码之后,Instant 运行 工作得很好。 我错过了什么吗?
Instant 运行 看起来是我们工具库中的一个很棒的工具,请记住它是 Android Studio 2.0 的新增功能,它是仍在预览(金丝雀频道),因此可能会有一些问题。正如 Google 所说,他们计划在未来几个月内对其进行改进。在撰写本文时,支持以下内容:
+--------------------------------------+-----------------------------------------+
| Code Change | Instant Run Support |
+--------------------------------------+-----------------------------------------+
| Change instance method implementation| Supported |
| Change static method implementation | |
| Add or remove a class | |
|--------------------------------------|-----------------------------------------|
| Add, remove, or change | Supported but requires an Activity |
| a string resource | restart. |
+--------------------------------------+-----------------------------------------+
和here是Instant 运行 目前不支持的一些代码更改:
- Add/remove/change 注释
- Add/remove/change一个实例字段
- Add/remove/change 静态字段
- Add/remove 静态方法签名
- 更改静态方法签名
- Add/remove一个实例方法
- 更改实例方法签名
- 正在更改 parent class 当前 class 继承自
- 更改已实现接口列表
- 正在更改 class 的静态初始值设定项
我在测试 Instant 运行 时也有类似的经历,但现阶段这是意料之中的事情。嘿,it didn't even work few times 在 Android 开发者峰会期间代表 Dave Burke ;)
gradle apt 用法如何,例如apply plugin: 'com.neenbedankt.android-apt'
?
使用 apt 是否会阻止 Android Studio Instant 运行 热交换代码?
在我的情况下,我使用 Dagger 2 和 Instant 运行 似乎不起作用....我是否遗漏了什么?
编辑: 不 - 它不! :) 我的安装显然遗漏了一些东西——就像在 Dave 的演示中一样。 Instant 运行 在 2.0 预览版 3b 上似乎仍然不稳定...
即时 运行 功能需要一些规则;
- Android gradle 版本的插件必须为 2.0.0 或更高版本
minSdkVersion
必须为 15 或更高- 同时,如果您的应用程序使用 multidex 支持 (
multiDexEnabled true
),则minSdkVersion
必须为 21 或更高。否则,android studio 会禁用 Instant 运行。
参考:
https://developer.android.com/studio/run/index.html#instant-run https://developer.android.com/studio/build/multidex.html#about
但我仍然可以在我的项目中使用即时 运行 的热插拔功能,即使它的最低 sdk 版本是 14。