android应用程序正在打开浏览器应用程序而不是webView,我该如何阻止它?

Con*_*nor 1 java url android webview webviewclient

现在,当我按下一个特定按钮时,它启动了一个打开webView的网页的意图,而是打开一个浏览器应用程序,显示不是我想要的地址栏.

经过一些研究后我发现我可以使用shouldOverrideUrlLoading()方法来阻止这种情况发生,只是在webView中打开页面,但我不知道如何在我的代码中实现这个方法,非常感谢帮助!

这就是我在打开网页的课程中所拥有的:

public class Codes extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.codes);

    View titleView = getWindow().findViewById(android.R.id.title);
    if (titleView != null) {
      ViewParent parent = titleView.getParent();
      if (parent != null && (parent instanceof View)) {
        View parentView = (View)parent;
        parentView.setBackgroundColor(Color.rgb(228, 108, 10));
      }
    }

    WebView codes = (WebView)findViewById(R.id.codesWebView);
    codes.getSettings().setJavaScriptEnabled(true);
    codes.loadUrl("http://dev10.affirmaconsulting.com:24009/keyentry");
    shouldOverrideUrlLoading(codes, "http://dev10.affirmaconsulting.com:24009/keyentry");

    }
}
Run Code Online (Sandbox Code Playgroud)

rpo*_*sky 6

我有同样的问题,页面没有加载到我的webview中,而是通过浏览器应用程序加载.我通过实现WebViewClient类并覆盖shouldOverrideUrlLoading方法解决了这个问题.

    WebViewClient webClient = new WebViewClient()
    {
        @Override
        public boolean shouldOverrideUrlLoading(WebView  view, String  url)
        {
            return false;
        }
    };
    webView.setWebViewClient(webClient);
Run Code Online (Sandbox Code Playgroud)

以下链接证明是有用的:http: //www.firstdroid.com/2010/08/05/override-url-loading-in-webview-android-tutorial/