Как я уже говорил в этой теме, я хочу, чтобы мой 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);
}
И эти журналы показали, что это сохраняет изображение, но не может его восстановить. Я подозреваю, что в ссылках на файл может быть что-то, но я не мог придумать лучшего способа получить ссылку на файл, который я создал при сохранении состояния.
Кто-нибудь взволнован?
Буду признателен за любые подсказки / предложения.
Заранее спасибо.
Manuel.