HTML5 не загружается Android 3.0 и выше? - PullRequest
1 голос
/ 08 февраля 2012

У меня есть следующий код загрузки HTML5 в веб-просмотр, но он, кажется, не работает после Android 3.0, а также не на ICS. Я надеялся получить помощь в том, что может быть причиной проблемы?

public class DodgerAsActivity extends Activity {
WebView webview;
AdView adView;

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


@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    adView = (AdView) findViewById(R.id.adView);
    webview = (WebView) findViewById(R.id.webview);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.getSettings().setPluginsEnabled(true);
    webview.getSettings().setSupportZoom(false);
    webview.setVerticalScrollBarEnabled(false);
    webview.setHorizontalScrollBarEnabled(false);
    webview.getSettings().setUseWideViewPort(false);
    webview.loadUrl("file:///android_asset/index.html");
    webview.setWebViewClient(new WebcadeViewClient());
    adView.loadAd(new AdRequest());
    }

}

1 Ответ

0 голосов
/ 08 февраля 2012

У меня есть эта настройка конфигурации, и она работает на большинстве сайтов, которые я пробовал, включая HTML5, javascript, flash, геолокации и многое другое.

// Custom Chrome/WebView Clients
myWebChromeClient = new MyWebChromeClient(); 
webView.setWebChromeClient(myWebChromeClient );
webView.setWebViewClient(new MyWebViewClient());
WebSettings webViewSettings = webView.getSettings();

// JavaScript Features
webViewSettings.setJavaScriptEnabled(true);
webViewSettings.setJavaScriptCanOpenWindowsAutomatically(false);

// Various plug-ins
webViewSettings.setPluginsEnabled(true);
if (Integer.parseInt(Build.VERSION.SDK) >= Build.VERSION_CODES.FROYO)
webViewSettings.setPluginState(WebSettings.PluginState.ON);

// Viewing preferences
webViewSettings.setBuiltInZoomControls(true);
webViewSettings.setNeedInitialFocus(false);
webViewSettings.setLoadWithOverviewMode(true);
webViewSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL);
webViewSettings.setLoadsImagesAutomatically(true);

// Cache
webViewSettings.setAppCacheEnabled(true);
webViewSettings.setDomStorageEnabled(true);
webViewSettings.setAllowFileAccess(true);

// Geolocations
webViewSettings.setGeolocationEnabled(true);
webViewSettings.setGeolocationDatabasePath("/data/data/your.app.name/geo");

Кроме того, попробуйте удалить shouldOverrideUrlLoading то, что вы делаете в нем, кажется неправильным ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...