javascript - 有没有办法在 webview 中拦截 javascript 触发的 URL?

标签 javascript android android-webview

有没有办法像使用 shouldOverrideUrlLoading() 的普通 hrefs 一样拦截 WebView 中的 javascript 触发的 URL?

最佳答案

onLoadResource()在调用任何资源时调用,包括 JavaScript。虽然目的与 shouldOverrideUrlLoading() 有点不同.

webControls.setWebViewClient(new WebViewClient() { 
    //Notify the host application that the WebView will load 
    //the resource specified by the given url.
    @Override  
    public void onLoadResource (WebView view, String url) {
        super.onLoadResource(view, url);
        Log.v(TAG, "onLoadResource("+url+");");
    }

    //Give the host application a chance to take over the 
    //control when a new url is about to be loaded in the 
    //current WebView. 
    @Override  
    public void shouldOverrideUrlLoading(WebView view, String url) {
        super.shouldOverrideUrlLoading(view, url);
        Log.v(TAG, "shouldOverrideUrlLoading("+url+");");
    }
}

关于javascript - 有没有办法在 webview 中拦截 javascript 触发的 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3572674/

相关文章:

android - Robolectric ShadowActivity 错误

Android list 错误 : Activities not assignable to android. app.activity

Android 谷歌服务位置成本和限制

android - 为什么我的代码没有在 Android 8+ (Oreo+) 中启动我的应用程序的固定快捷方式?

android - 在 HTML 按钮上打开 Android Activity 在 WebView 中单击

Javascript , JQ 数据类型冲突

javascript - 页面呈现时显示无失败

javascript - Redux - 复杂图形的建模状态并触发多个更新和副作用以响应单个操作

javascript - 如何将 javascript 脚本加载到 WordPress 中?

android - 使用底部导航栏在 Web View 中导航