2015-03-09 6 views
1

Часть моего приложения открывает браузер в приложении и отправляет пользователя на специальную веб-страницу (позволяет называть его «FirstPage»). Там пользователь может перемещаться по веб-страницам. Это прекрасно работает, но когда пользователь находится на веб-страницах и приложение прерывается (при входящем вызове или нажатии кнопки удержания), состояние браузера не сохраняется, и когда пользователь возвращается к приложению, браузер автоматически открывает «FirstPage», а не последняя увиденная страница.Android - Сохранение состояния браузера приложения (страница + место на странице), когда приложение прерывается.

Как я могу сохранить состояние браузера, так что последние просмотренные страницы появятся после перерыва?

Большое спасибо!

+0

открыть браузер? то это уже не часть вашего приложения. его поведение браузера. вы можете использовать webview вместо браузера btw –

ответ

0

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

Если же вы используете WebView (docs) вы можете, так как он инкапсулируется в вашем приложении. Такие функции, как computeVerticalScrollOffset() и getURL(), собирали эту информацию.

Данные можно хранить в Android Shared Preferences.

Если вам нужно сохранить эту информацию и быть готовым к работе в любое время, попробуйте ее сохранить на Activity.onDestroy(), Activity.onPause() и Activity.onStop(). Я не уверен, сколько контроля вам нужно будет хранить при закрытии/приостановке/остановке приложения, но если вы не можете предложить вам хранить его всякий раз, когда будет обнаружено изменение положения прокрутки или URL-адреса.

Просьба проверить this answer, чтобы узнать, как слушать изменения WebView.

Наконец, как только вы храните данные, вам просто нужно использовать сохраненные настройки при повторной инициализации WebView.

+0

Спасибо, я постараюсь работать с ним – yoav

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

  • Нет связанных вопросов^_^