*

【android】 webviewでassetsのリソースを使用する

公開日: : android

webviewでassets内のリソースにアクセスするには

file:///android_asset/assets内のファイルパス

のように書いて、assetsフォルダ内にはフォルダ、ファイルを配置します。

1.ページ全体を読む場合

webView.loadUrl(getString(R.string.my_html));

2.imgなどのsrcで使用する場合

こちらはロードする際はこつが必要で下記のように書く必要があります。

String html = "<html><body><img src=\"file:///android_asset/html/photo.png\"</img></body></html>";
String mimeType = "text/html";
String encoding = "utf-8";
webView.loadDataWithBaseURL("http://not/needed", html, mimeType, encoding, "");

それでも表示してくれない(泣)

と、ここまではググればでてくるのですが、自分の環境ではどうやっても表示してくれない。

原因は「ライブラリ内のassetsは参照できない」というところにありました。

下記の場合、Aの中でloadしていてもBのassetsにリソースを置かないと参照してくれませんでした。

プロジェクトA(as library)
   ↑
   ↑(参照)
   ↑
プロジェクトB(本体)

裏がとれました

原因が分かって調べなおすとちゃんとドキュメント化されてますた。

stackoverflow

Android Developer
[Library Projects] -> [Library projects cannot include raw assets]

以上

関連記事

no image

【android】 Android4.1のserviceでdefaultPreferenceがおかしい

【現象】 ActivityでdefaultPreferencesで保存したデータがservice内

記事を読む

no image

【android】stringsリソースにパラメータを埋め込む

●strings.xml %n$x n : 引数に渡す際の順番。n番目の引数。 x

記事を読む

no image

【android】言語・地域設定の取得

androidでは利用する言語と国名がjava.util.Localeのオブジェクトとして設定されて

記事を読む

no image

【android】処理時間を計測する

パフォーマンスのリファクタリングを行うには処理時間の計測がかかせません。 SDK標準のクラスを使っ

記事を読む

no image

【android】IMEの表示/非表示

//IMEを閉じる InputMethodManager inputMethodManager

記事を読む

no image

【android】オーバーレイでトップレイヤーにViewを表示する

常にホーム画面や他のアプリより前面にViewを表示する方法です。 前面に透明のViewGroupを

記事を読む

no image

【android】 adbコマンド集

●adbサービス起動 adb start-server ●adbサービス終了 adb

記事を読む

no image

【android】ホーム画面や他のアプリの前面にViewを表示する。

WindowManagerのTYPE_SYSTEM_ALERTのレイヤーにViewを表示することで、

記事を読む

no image

【andoid】ViewPagerを使う

1. layout.xmlにViewPagerを配置  2. PagerAdapter.jav

記事を読む

no image

インテント

基本 //任意のアクティビティの起動 Intent intent = new

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

no image
知らないと損をする6つのライセンスまとめ

オープンソースやフリーウェア、フリー素材などが巷に溢れ、それらを利用す

no image
ガリレオ:ニュースブラウザをリリースしました。

概要 ガリレオはニュースを読んだり、検索する機能に特化したブラウザア

no image
【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサ

→もっと見る

PAGE TOP ↑