не могу открыть твиттер URL в андроиде - PullRequest
3 голосов
/ 09 августа 2011

У меня проблема с приложением ANDROID.

Я хотел бы отобразить страницу Twitter в своем веб-просмотре, но URL не открывается.

Он продолжает загружаться бесконечно.

Я использую SDK 1.6.

    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setLoadsImagesAutomatically(true);
    webView.setBackgroundColor(0x00000000);
    webView.getSettings().setAllowFileAccess(true);
    webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

    final Activity activity = this;
    webView.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress) {
            activity.setProgress(progress * 100);
            Log.e("progress",progress+" "+((progress * 100)));
            if(progress==100)
            {
                //getWindow().setFeatureInt(Window.FEATURE_PROGRESS,Window.PROGRESS_VISIBILITY_OFF);
                indicator.setVisibility(View.GONE);
            }
            else
            {
                indicator.setVisibility(View.VISIBLE);
            }
        }
    });

    webView.getSettings().setUseWideViewPort(true);
    webView.setWebViewClient(new ApplicationWebViewClient());
}

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

Ответы [ 3 ]

13 голосов
/ 07 марта 2012
wv.getSettings().setDomStorageEnabled(true);

Это сработало для меня!

9 голосов
/ 16 августа 2011

Мне пришлось установить строку User Agent в веб-представлении, чтобы заставить его работать.

wv.getSettings () setUserAgentString ( "silly_that_i_have_to_do_this");.

и это сработало для меня.

Надеюсь, это поможет кому-то еще!

0 голосов
/ 09 августа 2011

Ваша проблема в том, что ваш shouldOverrideUrlLoading должен вернуть true, чтобы указать, что хост-приложение управляет нагрузкой:

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