Метод restorePicture WebView – Предотвращение веб-просмотра для перезагрузки страницы

Как я уже говорил в этой теме, я хочу, чтобы мой WebView не позволял перезагружать веб-страницу, когда на передний план выходит другое действие или просто при изменении ориентации. Причина в том, что контент WebView генерируется Javascript / AJAX почти полностью. После поиска на нескольких форумах я узнал, что многие люди предлагали использовать методы «saveState» и «restoreState», но когда я смотрю документацию, он говорит:

Обратите внимание, что этот метод больше не восстанавливает отображаемые данные для этого WebView. См. SavePicture (Bundle, File) и restorePicture (Bundle, File) для сохранения и восстановления отображаемых данных.

Итак, здесь я использовал этот savePicture и restorePicture, как следует:

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); 

… некоторые другие строки ….

  setContentView(R.layout.main); mWebView = (WebView) findViewById(R.id.webview); if (savedInstanceState == null){ loadInicialWebUi(); }else{ mWebView.restoreState(savedInstanceState); boolean restoredPic = mWebView.restorePicture(savedInstanceState, new File("savedDisplayWebView.temp")); Log.d(TAG, "restored Picture:" + restoredPic); } } @Override protected void onSaveInstanceState(Bundle savedInstanceState) { mWebView.saveState(savedInstanceState); boolean savedPic = mWebView.savePicture(savedInstanceState, "savedDisplayWebView.temp"); Log.d(TAG, "saved Picture:" + savedPic); super.onSaveInstanceState(savedInstanceState); } 

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

Кто-то взволнован? Я был бы признателен за любые подсказки / предложения. Заранее спасибо.

Мануэль.

Я бы загрузил страницу в onCreate() и поместил этот атрибут в свою активность в манифесте:

 android:configChanges="orientation|keyboardHidden" 

Это предотвратит перезапуск вашей активности при изменении ориентации. И поскольку ваша активность загружает страницу в onCreate() , onCreate() другого действия на передний план не приведет к перезагрузке страницы.