Ale*_*lly 6 html java html5 android webview
我最近注意到,当我从文件(使用资源或本地目录)加载基于代码的webview时,一旦调用destroy()方法,WebView将泄漏内存.我已将其缩小到引用问题.程序/ webview会复制原始视图并丢失JNI表中的引用 - 这最终会导致程序在512个条目后崩溃.
我已经看过这篇文章了,但是非泄漏的webview修复似乎不适用于资产或外部文件夹中的HTML.
当应用程序完全基于服务器时,该问题不存在; 但是,我需要应用程序能够"同步"数据并使用这些视图更新脱机存储库.
更多信息:我已将网页视图放入ViewPager中以允许滚动.这个问题在3.2.4/1中不存在,但已出现在4.0.3中.我收到了很多JNI警告,(找不到条目)并且在视图被销毁后它们仍然存在.我通过hprof看了它,我注意到HTML在丢失的变量中保留了残余.
任何有关如何纠正这种行为的意见将不胜感激.
编辑:
崩溃的具体细节
Failed adding to JNI local ref table (has 512 entries)
"Thread-375" prio=5 tid=15 RUNNABLE
| group="main" sCount=0 dsCount=0 obj=0x41504a90 self=0x1a9cf80
| sysTid=10314 nice=0 sched=0/0 cgrp=default handle=27159240
| schedstat=( 455083000 66745000 774 ) utm=30 stm=15 core=3
at android.content.res.AssetManager.readAsset(Native Method)
at android.content.res.AssetManager.access$700(AssetManager.java:35)
at android.content.res.AssetManager$AssetInputStream.read(AssetManager.java:573)
at dalvik.system.NativeStart.run(Native Method)
Run Code Online (Sandbox Code Playgroud)
更新:
要解决此问题,您必须从SD卡或其他一些存储机制加载.加载Javascript文件时,该错误是永久性的,我不知道它是否已在Chrome中修复,但在最新的操作系统中似乎没有在浏览器中修复.
| 归档时间: |
|
| 查看次数: |
3007 次 |
| 最近记录: |