无法在webView Android中打开Twitter

问题描述 投票:3回答:1

我正在使用以下方法打开Facebook、Twitter和一个网页。

private void showAddDialog(String ur) {

        final Dialog nagDialog = new Dialog(this,
                android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
        nagDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        nagDialog.setContentView(R.layout.airwebview);

        final WebView webView = (WebView) nagDialog
                .findViewById(R.id.webView_AboutWebsite);
        Button mCancelButton = (Button) nagDialog
                .findViewById(R.id.button_CancelButton);

        mCancelButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                nagDialog.dismiss();
            }
        });

        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings()
                .setUserAgentString("silly_that_i_have_to_do_this");
        webView.getSettings().setDomStorageEnabled(true);
        webView.loadUrl(ur);

        nagDialog.show();
    }

我已经成功启动了Facebook和其他网站,但无法打开Twitter网页内的... ... WebView.

我到现在为止一直用下面的方法打开Twitter,但是还没有成功。

webView.getSettings().setDomStorageEnabled(true);

mWebView.getSettings().setUserAgentString("Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3");

有什么办法可以解决这个问题?

java android webview
1个回答
1
投票

我检查了你的代码,在我设置了WebViewClient,覆盖了shouldOverrideUrlLoading方法来加载重定向URL后,它在我的手机上工作得很好。

private class MyWebViewClient extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    }

当我没有添加WebViewClient时,twitter让我重定向到默认的网络浏览器,在我的情况下是Chrome。

请检查这是否对你有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.