无法在webView android中打开Twitter

时间:2012-12-15 09:54:17

标签: java android webview

我知道这个问题听起来非常相似和重复,但我很震惊。

- 我使用以下方法打开FacebookTwitterWeb-Page

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();
    }

我能够成功启动Facebookother web-sites但无法打开 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");

请帮助我理解问题和克服它的解决方案。

1 个答案:

答案 0 :(得分:1)

我检查你的代码,在设置了覆盖了shouldOverrideUrlLoading方法的WebViewClient以加载重定向网址后,它在我的手机上工作正常。

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

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

检查这是否对您有帮助。