2013-06-07 2 views
2

У меня есть приложение, которое загружает веб-страницу и работает в режиме онлайн. Я добавил файл cache.manifest на свои страницы, и, похоже, он отлично работает при использовании браузеров на моем телефоне Android, а также при тестировании на моем рабочем столе.android webview не кэширует весь файл cache.manifest

При открытии приложения, и я открываю несколько страниц, они получают кеширование.

После этого я отключу все соединения Wi-Fi & 3G и снова откройте приложение. На этом этапе страницы, которые я открыл ранее, могут быть показаны, но те, которые я не открывал, дают мне ошибку: «Веб-страница недоступна».

Таким образом, это означает, что выполняется некоторое кэширование, но веб-клиент не кэширует все, что отображается в моем файле cache.manifest.

Пример страницы можно найти здесь: http://www.mobileevolution.be/apps/FitceCongress/android/gsm/home.php

манифест содержит следующую информацию:

CACHE MANIFEST 
# 30-05-2013 20h11 1152gg2dfdfdfd 

CACHE: 
committees.php 
congressprogram.php 
home.php 
../../congressprogram.xml 
../../partnerprogram.xml 
information.php 
partnerprogram.php 
sponsors.php 
style/style.css 
registration.php 
http://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900 
http://themes.googleusercontent.com/static/fonts/roboto/v8/Hgo13k-tfSpn0qi1SFdUfT8E0i7KZn-EPnyo3HZu7kw.woff 
http://themes.googleusercontent.com/static/fonts/roboto/v8/2UX7WLTfW3W8TclTUvlFyQ.woff 
http://themes.googleusercontent.com/static/fonts/roboto/v8/RxZJdnzeo3R5zSexge8UUT8E0i7KZn-EPnyo3HZu7kw.woff 
http://themes.googleusercontent.com/static/fonts/roboto/v8/d-6IYplOFocCacKzxwXSOD8E0i7KZn-EPnyo3HZu7kw.woff 
http://themes.googleusercontent.com/static/fonts/roboto/v8/mnpfi9pxYH-Go5UiibESIj8E0i7KZn-EPnyo3HZu7kw.woff 
http://themes.googleusercontent.com/static/fonts/roboto/v8/Hgo13k-tfSpn0qi1SFdUffY6323mHUZFJMgTvxaG2iE.eot 
http://themes.googleusercontent.com/static/fonts/roboto/v8/5YB-ifwqHP20Yn46l_BDhA.eot 
http://themes.googleusercontent.com/static/fonts/roboto/v8/RxZJdnzeo3R5zSexge8UUfY6323mHUZFJMgTvxaG2iE.eot 
http://themes.googleusercontent.com/static/fonts/roboto/v8/d-6IYplOFocCacKzxwXSOPY6323mHUZFJMgTvxaG2iE.eot 
http://themes.googleusercontent.com/static/fonts/roboto/v8/mnpfi9pxYH-Go5UiibESIvY6323mHUZFJMgTvxaG2iE.eot 

Параметры кэша в Android, кажется правильным в соответствии с другими нитями на этом форуме:

webView1.getSettings().setJavaScriptEnabled(true); // enable javascript 

cm = (ConnectivityManager) this.getSystemService(Activity.CONNECTIVITY_SERVICE); 
     if(cm != null && cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected()){ 
      webView1.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); 
     } 
     else{ 
      webView1.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ONLY); 
     } 

     webView1.getSettings().setDomStorageEnabled(true); 
     webView1.getSettings().setAppCacheMaxSize(1024 * 1024 * 8); 

     String appCachePath = getApplicationContext().getCacheDir() 
       .getAbsolutePath(); 

     webView1.getSettings().setAppCachePath("/data/data/be.mobileevolution.fitcecongress/cache"); 
     //webView1.getSettings().setAppCachePath(appCachePath); 
     webView1.getSettings().setAllowFileAccess(true); 
     webView1.getSettings().setAppCacheEnabled(true); 

Я создаю webviewclient следующим образом:

webView1.setWebViewClient(new WebViewClient(){ 

Я думаю, что следующая нить такая же проблема, как у меня, но не реальный ответ не был дан: Webview not loading offline cached data

Кто-нибудь есть какие-либо разъяснения, почему все файлы в cache.manifest не загружаются на приложение ? Или, возможно, cache.manifest вообще не работает в веб-браузере, и кеширование было сделано из-за приложения? Но в браузере он работает нормально!

Спасибо, ГРЦ, Lars

ответ

0

У вас есть рутина в вашем приложении HTML5, чтобы загрузить все веб-страниц и данных, прежде чем в автономном режиме?

var appCache = window.applicationCache; appCache.update();

Также - WebSettings.LOAD_DEFAULT работает для меня независимо от того, являюсь ли я онлайн или офлайн.

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