Android Studio即时运行 - 覆盖并重新构建完整应用程序

6
我目前非常喜欢Android Studio 2.0的即时运行功能。对于当前活动中的小调整,它非常好用。但有时我需要在早期的活动中进行调整,而Instant Run要么不应用该更改,要么只是不重新运行先前的活动。我想保留Instant Run作为快捷选项,但有时只想告诉AS重新加载整个应用程序,而不使用Instant Run。
有没有快速的方法可以做到这一点?我看到有一个3步检查清单可以完成 - 停止,重建,调试。但即使如此,它也似乎无法正常工作,显然比按一个按钮的旧方法慢。

1
没错,当你进行较大的更改,例如更改方法签名时,即时运行只会尝试交换它,这可能会导致ART异常。文档建议停止应用程序并重新构建它,这将安装一个apk http://tools.android.com/tech-docs/instant-run。然而,这很慢,旧版本中的简单非即时运行按钮会更快。 - headsvk
Clyde,你可以在这种情况下使用“Build > Clean and Re-run”选项。同时,按住Shift键并单击重新运行图标也可以进行清理和重新运行操作。 - James L.
1个回答

7
这是因为您更改的代码从未再次运行,所以这并不是一个错误。
在Android Studio 2.0稳定版中,我们已经在工具栏中添加了一个重新运行按钮enter image description here。如果您点击它,它将推送您的更改并重新启动您的应用程序,从而强制进行冷交换。重新启动的进程将具有您想要看到的所有更改,因为您的新代码将再次运行。
希望这可以帮助!

3
在 Studio 2.2 中,重新运行按钮可以重启应用程序,但不会重新安装 APK 文件。我的代码已经做了修改,但是这些修改并没有被推送到设备上。这让我非常沮丧,因为有几次我花费了很长时间尝试解决问题,结果发现 APK 文件并没有更新。 - Clyde

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接