之间的主要区别是什么
运行应用程序 并 应用更改?
使用每种方案的最佳方案是什么?
谢谢。
如果您启用了“即时运行”并禁用即时运行检查,则将启用“应用更改” https://stackoverflow.com/a/35169716/2826147
来自 Android 文档:https ://developer.android.com/studio/run/index.html
应用更改按钮为您的应用程序的大多数增量更改提供了更快的工作流程。[...]
您可以单击“应用更改”将某些代码和资源更改推送到正在运行的应用程序,而无需构建新的 APK,在某些情况下,甚至无需重新启动当前活动。[...]
单击Run (或 Debug )强制冷交换和应用程序重新启动。如果您对应用清单或清单引用的资源进行更改,Android Studio 始终会通过重新安装完整的 APK 来推送您的更改。[...]
仅当您满足以下条件时,应用更改操作才可用:
- 使用调试构建变体构建您的应用程序。
- 使用 Gradle 版本 2.3.0 或更高版本的 Android 插件。
- 在应用的模块级 build.gradle 文件中将 minSdkVersion 设置为 15 或更高。
- 将您的应用部署到运行 Android 5.0(API 级别 21)及更高版本的目标设备。
当您单击“运行”应用程序图标时,它将卸载现有构建并每次安装构建。
仅当您在 android studio 中启用“即时运行”功能时,“应用更改”选项才可用。它将交换对现有构建的更改并运行您的构建。执行此操作时,您现有的构建不会被卸载。
Instant Run / Apply Changes 功能将尝试在不构建和部署完整 APK 的情况下推送您的更改,并且如果可能的话,无需重新启动应用程序甚至当前活动。如果需要,它将诉诸完全重新安装。更多细节在这里。
在 Android Studio 2.3 之前,只要满足某些条件,即可通过运行(或调试)按钮使用即时运行功能。从 Studio 2.3 开始,我们有一个 Instant Run 专用按钮,即 Apply Changes 按钮。它仅在可以即时运行时可用。运行和调试按钮现在总是重新启动应用程序。
从发行说明:
使用 Instant Run 推送更改的单独按钮:部署应用程序后,您现在单击 Apply Changes 以使用 Instant Run 快速将增量更改推送到正在运行的应用程序。当您想要可靠地推送更改并强制重新启动应用程序时,您始终可以使用“运行”和“调试”按钮