2015-06-06 3 views
0

Я пытаюсь обновить приложение для Android. Он был разработан с целевым API 21. Он отлично работает на моем телефоне API 19 (и нескольких других устройствах с различными версиями сборки), но не на моем новом телефоне 22 API. Это новый пакет WebView. Приложение состоит в основном из ссылок на ресурсы html или на веб-страницы с помощью строковых массивов. Ссылки на активы работают нормально, но ссылки на веб-сайты дают мне ошибку. Например: «Веб-страница не доступна Веб-страница http://www.ushistory.org/franklin/info не может быть загружен, потому что чистый :: ERR_CACHE_MISS» Попытка сделать предыдущее приложение совместимым с Lollipop WebView

Я посмотрел на developer.android.com и других ресурсов, а также скорректировал код, чтобы получить это:

WebView resWebView = new WebView(getActivity()); 
    WebSettings webSettings = resWebView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    if (Build.VERSION.SDK_INT >= 21) { 
     resWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); 
     resWebView.getSettings().setMixedContentMode(WebSettings 
       .MIXED_CONTENT_COMPATIBILITY_MODE); 
     CookieManager cookieManager = CookieManager.getInstance(); 
     cookieManager.setAcceptThirdPartyCookies(resWebView, true); 
    } 
     resWebView.loadUrl("http://www.ushistory.org/franklin/info "); 
       scroller.addView(resWebView); 

Я играл в разных режимах, но он по-прежнему не работает. Что мне не хватает?

ответ

0

Ну, оказывается, мне не нужны какие-либо изменения выше. Я установил обновление системы на обоих телефоны вчера и вернулся к исходному коду (минус скроллер):

WebView resWebView = new WebView(getActivity()); 
WebSettings webSettings = resWebView.getSettings(); 
webSettings.setJavaScriptEnabled(true); 
resWebView.loadUrl(url); 

и она отлично работает.

Смежные вопросы