【发布时间】:2015-02-15 05:09:19
【问题描述】:
我可以使用 Google 的 Chrome DevTools (chrome://inspect) 成功调试在移动设备上运行的 Web 应用程序的前端当我的移动设备使用 Chrome 的浏览器(使用端口转发)。我想知道是否可以使用 Android 的本机浏览器做同样的事情,我的意思是预装在 Android 中的一个浏览器,它的应用程序启动器看起来像这样,只是为了更清楚,:-) :
有没有办法做到这一点?因为当我在 chrome://inspect 中使用此浏览器打开选项卡时,我当然没有打开打开的选项卡,也无法检查我的设备从本机浏览器查看的内容。
我需要以某种方式做到这一点,因为我发现了一些专门绑定到本机浏览器的 UI 相关问题(CSS、JS),实际上在 chrome 中一切都很好,但在本机浏览器上没有。
我也尝试过使用weinre,发现它非常有用,但我只能在局域网的上下文中使用它,这意味着我必须将设备与局域网IP地址绑定,实际上我需要访问从http://localhost 到Web 应用程序(就像在带有端口转发的Chrome DevTools 中完成的那样),因为我使用的服务器端软件严格只依赖于本地主机(它不是我的,如果可以的话,我不会这样做)。
那么,有没有办法在 Android 默认的原生浏览器上实现这一点?使用 weinre 和/或 Chrome DevTools?
感谢关注!
P.S.:我知道 Android 浏览器不再是 Android 4.4 的原生浏览器,无论如何,我需要它来实现兼容性,当然,如果有可能的话(我猜应该是)。
【问题讨论】:
-
您要针对哪个版本进行调试?
-
你的意思是我用的是哪个安卓版本?我的安卓版本是4.1.2,有点老了,但我不得不承认我已经root了设备,它不再更新了,我想更新它,但是当我尝试它时,它说更新不能完毕。浏览器是与该版本预先捆绑的浏览器。顺便说一句,既然我们正在讨论这个问题,有没有办法更新一个有根的 Android 系统?
-
无论是否生根,您都只能安装官方更新(如果存在)。鉴于您使用的版本相对过时,它很可能不再受支持。不过,您可以尝试非官方构建的较新版本。
-
无论如何,我不相信 4.1.2 中使用的本机 webview 与 Chrome 远程调试兼容 - 而是似乎在 4.4 中引入了基于 Chromium 的 webview。如果您要调试的问题是旧版本独有的,我认为该路径不适合您。如果在较新的 webview 版本上共享,您可以尝试使用模拟器,尤其是能够使用 VM 加速功能的 x86 映像。
-
感谢您的建议,不,我猜这个问题仅与旧版本有关,我不知道它在 4.4 上的情况如何,因为我拥有的唯一(物理)设备是带有版本的设备4.1.2.不过,我可以使用虚拟机。您是说即使有根设备也是可更新的,不是吗?奇怪的是我的没有,它经常尝试自我更新,然后我看到一条消息,如“软件更新 - 不成功”。正如您所说,我想不再支持 4.1.2 了。那么非官方版本呢?他们可靠吗?更新会保留我的所有应用和数据吗?
标签: android debugging remote-debugging android-browser