学习自:Chrome on Android之三 调测WebView
(网上抄袭泛滥,来源已不可考,在此致谢分享的师兄)
为方便阅览,谨拷贝在此:
从 Android4.4(KitKat)开始 ,可以使用DevTools对原生Android应用程序的Android WebViews内容进行调试。
调试WebView要求
- 在Android设备或模拟器运行Android4.4或更高版本,Android设备上启用USB调试模式。
- Chrome 30或更高版本。更强大的WebView界面调试功能需要Chrome31或更高版本。
- Android应用程序中的WebView配置为可调试模式。
开始配置
1. 在代码中配置WebView为可调试
Java代码:
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
注意web调测不受app manifest文件中debuggable标记状态的影响,如果希望仅debuggable为true时才能使用web调测,那么运行时检测此标记,如下:
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
if ( 0 != ( getApplcationInfo().flags &= ApplicationInfo.FLAG_DEBUGGABLE ) ) {
WebView.setWebContentsDebuggingEnabled(true);
}
}
2. 在Chrome中启用设置“USB web debugging”(不会影响WebView)
在DevTools中打开 WebView
在DevTools调试WebView:
- 使用USB数据线将移动设备连接到开发机器。将移动设备连接到开发机器时,可能会看到USB调试警报“设备请求权限”。为了避免每次调试时看到此警告,勾选“总是允许从这台计算机”,并单击“确定”。
- 在开发机器的Chrome上,打开检查about:inspect。
- 就能看到应用程序和调试的WebView列表的名称。单击旁边标签中inspect链接,就能在DevTools查看WebView的内容。
注:在Chrome 31及更高版本,about:inspect页面提供了一个图形表示WebView的大小和相对设备屏幕的位置。在Chrome 31之前:about:inspect页面仅支持提供的WebView的标题。设置WebViews标题的过程中,选择正确的WebView。