twitter url无法在android webview中打开

时间:2011-08-01 10:49:33

标签: android android-webview

我是android的初学者。 我想在webview中打开twitter url。我有一个Twitter网址(http://twitter.com/ ..)。我尝试使用此代码,但无法在webview中打开。

代码:

webView.getSettings().setJavaScriptEnabled(true);

    webView.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress)
        {
            activity.setTitle("  Loading...");
            activity.setProgress(progress * 100);

            if(progress == 100){

                activity.setTitle(R.string.app_name);
                //view.canGoBack();
            }
        }
    });
   webView.setWebViewClient(new WebViewClient() {


public boolean shouldOverrideUrlLoading(WebView view, String url){              
    view.loadUrl(url);
    view.canGoBack();

    return true;
    }

    });

     //The URL that webview is loading
    webView.loadUrl(uri);
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(event.getAction() == KeyEvent.ACTION_DOWN){
        switch(keyCode)
        {
        case KeyEvent.KEYCODE_BACK:
            if(webView.canGoBack() == true){
                webView.goBack();
            }else{
                finish();
            }
            return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}

帮帮我......

4 个答案:

答案 0 :(得分:1)

我在我的问题中得到了解决方案

webView.getSettings().setUserAgentString("Mozilla/5.0 (Linux; U; Android 2.0; en-us; Droid Build/ESD20) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17");

答案 1 :(得分:0)

试试这个:

Uri uri = Uri.parse(Place your URL here);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

答案 2 :(得分:0)

希望这有助于:

<强> DisplayWeb.java:

public class DisplayWeb extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.web);
    String url = "http://www.twitter.com";

    System.out.println("++++URL GOT = "+url);
    WebView myWebView = (WebView) findViewById(R.id.webview);
    myWebView.getSettings().setJavaScriptEnabled(true);
    myWebView.getSettings().setBuiltInZoomControls(true);
    myWebView.getSettings().setSupportZoom(true);
    myWebView.loadUrl(url);
    Button back = (Button) findViewById(R.id.back);
    back.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            DisplayDirections.this.finish();
        }
    });
}
}

<强>的web.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
 <WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</RelativeLayout>

希望这有帮助!

答案 3 :(得分:0)

我遇到了同样的问题,并且一直在寻找可能的答案来解决这个问题。

黑客浏览器代理可能会有效,但这不是一个好主意。

这篇文章中给出的解决方案对我有用,我认为这是一个更好的解决方案:Problems loading mobile.twitter in webview

希望有所帮助。