android - 为 Android WebView 启用调试是否有任何缺点?

标签 android cordova webview

在 Android WebView 中,it is now pretty easy to allow debugging in Chrome on an attached computer .只需添加此代码,您就可以像在 Chrome 中打开的页面一样调试 WebView:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}

效果很好。精彩的。我在我正在开发的 Cordova 应用程序中使用它。

我的问题是,这会导致任何问题吗?如果我公开发布我的应用程序,有什么理由不应该启用调试功能?我认为必须有,否则它只会默认启用并且任何 WebView 都是可调试的。但我不知道为什么。

最佳答案

在测试和调试时保持 WebView Debug模式是可以的,但在运行时则不行。这会带来许多风险,并使您的应用程序容易被最终用户篡改。

您应该只扩展您的 Kitkat 版本条件以包括 list 文件中的 Debug模式。这stackoverflow answer概述了如何获得 Debug模式。

它看起来像这样:

boolean isDebuggable = (0 != ( getApplicationInfo().flags &= ApplicationInfo.FLAG_DEBUGGABLE));

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && isDebuggable) {
    WebView.setWebContentsDebuggingEnabled(true);
}

关于android - 为 Android WebView 启用调试是否有任何缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24072647/

相关文章:

android 以编程方式更新 apk 并查看安装结果

尝试自动化时,Android 驱动程序抛出错误

ios - Ionic v3 从 PLIST 中删除特定键

android - 如何使用 phonegap 在 Android 手机上显示摄像头

android 从 WebView 关闭当前 Activity

javascript - 为什么 android webView 不支持 webSocket?

java - setURLStreamHandlerFactory 和 "java.lang.Error: Factory already set"

java - 将多条记录写入NFC标签: example source code

cordova - InAppBrowser 仅在我的域已打开时允许导航

ios - 将 Javascript 注入(inject) Webview - Swift