Я показываю довольно большое изображение в веб-просмотре, так что функции щепотка-масштабирование и другие удобства для просмотра уже доступны.
Он отображается правильно в первый раз. Но после выхода из нее и возвращения к ней приложение вылетает из OutofMemoryError, связанного с потоком веб-просмотра.
Я попытался несколько вещей, чтобы попытаться закрыть веб-просмотр или остановить поток, или очистить его использование памяти, но безрезультатно. Вот примеры кода, который я добавил в свою деятельность "onStop()
function
wv.stopLoading();
wv.clearCache(true);
//removeView(wv);
wv.clearView();
wv.freeMemory();
wv.destroy();
try {
Class.forName("android.webkit.WebView").getMethod("onPause", (Class[]) null).invoke(wv, (Object[]) null);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
В любом случае не стесняйтесь критиковать любую из этих строк кода, но дело в том, что они вообще не влияют на эту ошибку! Это связано с тем, что поток webviewcore не освобождает память.
Это вызывает тревогу, потому что, даже если я использую меньшее изображение, похоже, что это все равно произойдет. Помощь?