Запустите веб-сервер в приложении для Android - PullRequest
2 голосов
/ 09 мая 2011

У меня есть приложение для Android, которое использует веб-просмотр для отображения некоторых своих экранов. Проблема в том, что для загрузки изображений с удаленного сервера требуется много времени для страниц веб-просмотра Android. Поэтому я подумал о запуске веб-сервера в моем приложении для Android (в новом потоке), который будет обслуживать статические изображения.

Мне удалось запустить веб-сервер в потоке на порту 8080 (из моего приложения), но я не смог получить к нему доступ из своего приложения через веб-просмотр по URL "10.0.2.2:8080", "127.0.0.1: 8080 "и" localhost: 8080 ". Есть идеи, почему я не смог получить доступ к своему веб-серверу?

Спасибо заранее!

Ответы [ 3 ]

2 голосов
/ 09 мая 2011

Вам не нужно запускать сервер для загрузки статического контента. В веб-представлении Android есть метод loadDataWithBaseURL для этой цели

http://developer.android.com/reference/android/webkit/WebView.html#loadDataWithBaseURL%28java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String%29

2 голосов
/ 09 мая 2011

Можно ли вместо этого напрямую загружать данные HTML в веб-просмотр?

String summary = "<html><body>You scored <b>192</b> points.</body></html>";
webview.loadData(summary, "text/html", "utf-8");
1 голос
/ 09 мая 2011

Если у вас мало изображений или общий размер не слишком велик, вы можете просто включить свои изображения в качестве ресурсов в свое приложение.

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

Краткий справочник о том, как использовать локальные изображения в HTML для веб-просмотра, находится здесь: http://www.androidsnippets.com/webview-with-custom-html-and-local-images

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...