Подтвердить что ты не робот

Что означает файл:///android_asset/www/index.html?

Я хочу знать, что означает file:/// при загрузке html файла из папки ресурсов в android

Это абсолютное имя пути, указывающее на корневой каталог?

Я видел это в учебнике для телефонного разговора между прочим.

4b9b3361

Ответ 1

file:/// - это URI (Uniform Resource Identifier), который просто отличает от стандартного URI, который все мы знаем слишком хорошо - http://.

Это подразумевает абсолютное имя пути, указывающее на корневой каталог в любой среде, но в контексте Android это соглашение, чтобы сказать, что время выполнения Android: "Здесь в каталоге www есть файл, называемый index.html, расположенный в папке assets в root проекта.

Так как активы загружаются во время выполнения, например, виджет WebView точно знает, где загрузить загруженный файл ресурсов, указав URI file:///.

Рассмотрим пример кода:

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

Очень легко сделать это, некоторые из них заключили бы как file:///android_assets, заметили бы множественное количество активов в URI и задались вопросом, почему встроенный ресурс не работает!

Ответ 2

Если кто-то использует AndroidStudio, убедитесь, что папка с ресурсами помещена в

  • приложение/SRC/основные/активы

    Каталог.

Ответ 3

URI "file:///android_asset/" указывает на YourProject/app/src/main/assets/.

Примечание: android_asset/ использует единственное (актив), а src/main/assets использует множественное число (активы).

Предположим, что у вас есть файл YourProject/app/src/main/assets/web_thing.html, который вы хотите отобразить в WebView. Вы можете ссылаться на него следующим образом:

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

Вышеприведенный фрагмент может быть расположен в классе Activity, возможно, в методе onCreate.

Вот руководство к общей структуре каталогов проекта андроида, что помогло мне разобраться в этом ответе.

Ответ 4

  • На самом деле это называется file:///android_asset/index.html

  • file:///android_assets/index.html даст вам ошибку сборки.

  • Попробуйте изменить заголовок вопроса на

    что делает файл:///android_asset/index.html означает

.

Ответ 5

Мне понадобилось больше 4 часов, чтобы решить эту проблему. Я последовал за проводником из http://docs.phonegap.com/en/2.1.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Android

Я использую Android Studio (Eclipse с ADT не может работать должным образом из-за проблемы с сборкой).

Решение, которое сработало для меня:

  • Я помещаю /assets/www/index.html в каталог app/src/main/assets. (учтите, что AndroidStudio имеет разные перспективы, такие как Project или Android).

  • используйте super.loadUrl( "файл:/// android_asset/www/index.html" ); вместо super.loadUrl( "file:/// android_assets/www/index.html" ); (не s)

Ответ 6

it file:/// android_asset/... not file:/// android_assets/... заметить, что множественное число активов неверно, даже если ваш файл имя - это активы