shouldOverrideUrlLoading

shouldOverrideUrlLoading

在我的应用程序中, shouldOverrideUrlLoading () 在 4.0.3 版本上没有被调用。我已经在 2.2 和 4.0.1 上对其进行了测试,它们都运行良好。
设备名称是 HTC verizon

我的目的是为页面中存在的 mailto: 和 tel: 链接提供自定义 Activity 。如果 shouldOverrideUrlLoading() 永远不会被击中,我有什么想法可以让这个工作吗?

请建议

最佳答案

自动解释方法,您也应该覆盖 onPageStarted:

@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
    super.onPageStarted(view, url, favicon);

    // 11 = Build.VERSION_CODES.HONEYCOMB (Android 3.0)
    if (Build.VERSION.SDK_INT < 11) {

    // According to this page:
    //
    // http://www.catchingtales.com/android-webview-shouldoverrideurlloading-and-redirect/416/
    //
    // shouldOverrideUrlLoading() is not called for redirects on
    // Android earlier than 3.0, so call the method manually.
    //
    // The implementation of shouldOverrideUrlLoading() returns
    // true only when the URL starts with the callback URL and
    // dummyCallbackUrl is true.

         if (shouldOverrideUrlLoading(view, url)) {
             view.stopLoading();
         }
     }
 }

10-07 12:49