WebViewでAssetsフォルダからリソースを複数回読み込んだ時に落ちるエラーについて


Assetsフォルダから画像を取得してWebViewで表示するという処理を行っている時に、一定回数でActivityが終了してしまう事態が発生しました。
LogCatにはJNI error (app bug): local reference table overflowと表示されていたのですが、画面遷移後も発生していたため別の原因かと思い調べたところ、どうやらAndroid4系に限ったバグでWebViewからAssetsにあるリソースを512回以上読み込むと必ず落ちるバグがあるそうです。
また、これは画像だけでなくHTML、CSS、JS等も回数に含まれます。
WebView内部のNDKで書かれた部分のバグのためどうしようもなく、今回はリソースを読み込む場所をAssetsからファイルシステムに変更して解決しました。

Comments

comments

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>