アセットディレクトリのアセットを公開する私のプロジェクトにライブラリが含まれています。 Android 7でアプリを実行するとうまく動作し、webviewはアセットをうまく読み込みます。今日、私はKitkat(API 19)でアプリをテストしましたが、file://android_asset/someAsset.png
のような読み込みリソースは読み込まれません。AndroidのWebViewでアセットにアクセスできないKitKat
私のライブラリ用に作成されたaarファイルをチェックしましたが、これらのファイルが含まれています[明らかに、APKはAndroid 7上で正常に動作しているためです]。ここで
は、私のWeb設定です:クロームをデバッグするときに私が得る
WebSettings s = getSettings();
s.setAllowFileAccess(true);
s.setSupportZoom(false);
s.setBuiltInZoomControls(false);
s.setDomStorageEnabled(true);
s.setJavaScriptCanOpenWindowsAutomatically(true);
s.setUseWideViewPort(true);
s.setLoadWithOverviewMode(true);
s.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
s.setJavaScriptEnabled(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
s.setMediaPlaybackRequiresUserGesture(false);
}
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) {
s.setAllowFileAccessFromFileURLs(true);
s.setAllowUniversalAccessFromFileURLs(true);
}
s.setGeolocationEnabled(false);
エラーがある:File not found
。
私は、Androidスタジオにはもう存在しないIntelliJ設定:"Include assets from dependencies into APK"
を参照して、SOに掲載された質問を読んでいます。 、https://developer.android.com/studio/projects/android-library.html示す
dependencies {
compile project(':myLib')
}
を追加すると、メインプロジェクトに資産を提供するのに十分であること、[それは明らかに、それゆえAARコンテンツん]:しかし私は、このドキュメントのページを発見しました。
まだ、私はそれらのリソースを表示することはできません。
私はまた、ライブラリからメインプロジェクトにassetsディレクトリをコピーしようとしましたが、まだ運がありません。それらはwebviewによって読み込まれず、同じエラーが発生します。
'file://'ではなく 'file:///'を試してください。私は資産からのコンテンツを「WebView」に問題なくロードしています。 [my book](https://commonsware.com/Android)の[チュートリアル12](https://github.com/commonsguy/cw-omnibus/tree/master/EmPubLite-AndroidStudio/T12-Book/EmPubLite)を参照してください。 )、 例えば。 – CommonsWare