我使用的是 Android Studio 2.3.3。
结论在文末。
符号:
监视器 = Android 设备监视器
工作室 = 安卓工作室
在 Android Studio 的首选项 -> (Build, Execution, Deployment) -> Instant Run -> 取消选中 Instant Run。否则会提示“应用程序安装失败”的错误信息,我尝试了几种方法,没有取消选中Instant Run,但都不起作用。所以现在只需取消选中 Instant Run。
(i) 如果是生产版本(运行‘app’):
(1) 如果我在“工具”下拉菜单中勾选“启用亚行集成”选项:
(a) 直接从 Studio 中打开 Monitor 可以工作,并且 View Hierarchy 将显示在 Monitor 中,但它会提示一条消息“禁用 ADB 集成以下调试会话将被关闭:app”(它显示“调试会话”,虽然我正在使用生产版本)。注意 在我关闭 Monitor 后,Studio 将再次自动选中“Enable ADB Integration”选项。
(b) 从 Bash 打开监视器会提示错误消息“ddms, could not open selected VM debug port(870)”,但只需手动取消选中“Enable ADB Integration”选项即可解决问题,View Hierarchy 将显示。
(2) 如果我没有勾选“启用 ADB 集成”选项:
直接从 Studio 和 Bash 打开 Monitor 都可以,无需额外操作。
(ii) 如果是调试版本:
我必须启用 ADB 集成才能启动调试,因此将选中“启用 ADB 集成”选项。
Studio 在我的手机中安装应用程序后:
然后在第 (i)-(1) 节中的行为完全相同。换句话说,出于 View Hierarchy 的目的,启动调试构建与启动生产构建并选中“启用 ADB 集成”选项相同。
结论:要安装应用程序,需要取消选中“Instant Run”(请参阅报告顶部的说明)。要在 Monitor 中显示 View Hierarchy,需要取消选中“Enable ADB Integration”。从 bash 和 Studio 打开 Monitor 都可以。调试构建和生产构建都可以工作。