2013-10-15 6 views
1

У меня есть приложение Android Phonegap/Cordova, использующее удаленную страницу индекса, которая реализует кэширование html5, чтобы приложение можно было использовать офлайн. Это отлично работает, как только пользователь запустил приложение с активным подключением для заполнения кеша изначально, он работает без проблем и чувствует себя действительно родным, когда отключен.Открытие Phonegap/Cordova приложение офлайн

Однако я хочу изящно обращаться с кем-то, начинающим его в первый раз, когда отключен, т. Е. Когда удаленные страницы еще не кэшированы. На данный момент страница не найдена.

Я могу проверить, есть ли сетевое подключение до перенаправления на удаленную страницу, но это означает, что у них должно быть подключение для запуска, даже когда удаленный index.html был кэширован и будет доступен в автономном режиме.

Есть ли хороший способ избежать страницы по умолчанию, которая не найдена? В идеале я хочу показать диалог, в котором пользователю необходимо подключение к данным, чтобы открыть приложение в первый раз, чтобы локальные удаленные ресурсы были кэшированы локально.

ответ

1

Найденный ответ - я добавил это к основному виду деятельности, которая простирается Droidgap

public void onReceivedError(int errorCode, String description, String failingUrl) { 
     super.loadUrl("file:///android_asset/www/offline.html"); 
     return; 
} 

В этом случае я включил файл offline.html для отображения в автономном режиме сообщения, с помощью кнопки повторите попытку, которая пытается перенаправить на удаленную страницу индекса. Если веб-просмотр имеет проблемы с загрузкой этой удаленной страницы, он изящно опустится на локальную страницу offline.html, пока не сможет кэшировать удаленные файлы.

Нет неприятных 404 страниц, хорошо!

+0

Вы знаете, как поддерживать это в IOS –

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