21

file:///Androidのアセットフォルダからhtmlファイルをロードするときの意味を知りたい

ルートディレクトリを指す絶対パス名ですか?

ちなみにこれはphonegapのチュートリアルで見ました。

4

6 に答える 6

41

file:///は、私たち全員がよく知っている標準URIと単純に区別するURI(Uniform Resource Identifier)です- http://

これは、どの環境でもルートディレクトリを指す絶対パス名を意味しますが、Androidのコンテキストでは、Androidランタイムに「ここでは、ディレクトリには、のフォルダにあるwwwというファイルがあります。プロジェクトのルートindex.htmlassets」。

これは、実行時にアセットがロードされる方法です。たとえば、ウィジェットは、 URIWebViewを指定することにより、埋め込みリソースファイルをロードする場所を正確に認識します。file:///

コード例を考えてみましょう。

WebView webViewer = (WebView) findViewById(R.id.webViewer);
webView.loadUrl("file:///android_asset/www/index.html");

ここで犯す非常に簡単な間違いはこれですfile:///android_assets。URI内の複数のアセットに気づき、埋め込まれたリソースが機能しないのはなぜだろうと推測する人もいます。

于 2012-08-14T23:08:11.573 に答える
18

誰かがAndroidStudioを使用している場合は、アセットフォルダーがに配置されていることを確認してください

  1. app / src / main / Assets

    ディレクトリ。

于 2014-09-02T21:08:18.233 に答える
16

URI"file:///android_asset/"はを指しYourProject/app/src/main/assets/ます。

注:android_asset/単数形(アセット)をsrc/main/assets使用し、複数形(アセット)を使用します。

YourProject/app/src/main/assets/web_thing.htmlWebViewに表示したいファイルがあるとします。あなたはそれをこのように参照することができます:

WebView webViewer = (WebView) findViewById(R.id.webViewer);
webView.loadUrl("file:///android_asset/web_thing.html");

上記のスニペットは、Activityクラス、場合によってはonCreateメソッドに配置できます。

これは、Androidプロジェクトの全体的なディレクトリ構造のガイドであり、この答えを理解するのに役立ちました。

于 2016-04-12T19:21:04.363 に答える
4

それは実際に呼ばれていますfile:///android_asset/index.html

file:///android_assets/index.htmlビルドエラーが発生します。

于 2014-01-20T19:13:00.247 に答える
0

この問題を解決するのに4時間以上かかりました。http://docs.phonegap.com/en/2.1.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Androidのガイドに従いました

私はAndroidStudioを使用しています(ビルドの問題のため、ADTを使用したEclipseは正しく機能しませんでした)。

私のために働いた解決策:

  1. /assets/www/index.htmlをapp/src / main/assetsディレクトリに置きます。(AndroidStudioにはProjectやAndroidなどのさまざまな視点があることに注意してください)

  2. super.loadUrl( "file:/// android_asset /www/index.html");を使用します。super.loadUrl( "file:/// android_assets /www/index.html");の代わりに (sなし)

于 2015-03-09T08:47:55.847 に答える
0

それはfile:/// android_asset / ...ではなくfile:/// android_assets /...ファイル名がアセットであっても複数のアセットが間違っていることに注意してください

于 2017-03-08T19:33:11.730 に答える