Android WebView включает javascript

Может быть глупый вопрос, но я не знаю, как включить URL-адрес src для моего javascript в Webview?

Я создаю в коде огромный HTML-тег, передавая ему переменные, а затем печатаю их с помощью диаграмм плавучести. Файлы javascript находятся в моей папке ресурсов, поэтому на статической странице html я просто ссылаюсь на них как на файл:///android_asset/jquery.flot.js.

Но как мне это сделать, когда все построено на коде? Это не работает

"<script language=\"javascript\" type=\"text/javascript\" src=\"file:///android_asset/jquery.flot.js\"></script>" +

С Уважением


person elwis    schedule 17.02.2011    source источник


Ответы (1)


Во-первых, убедитесь, что ваши ссылки верны, во-вторых... узнайте, можете ли вы включить локальный Javascript, потому что я не уверен в этом.

Но почему бы вам не попробовать сгенерировать код Javascript (прочитанный из файла) с тегом <script>? Может быть, это может быть решением.

Отредактировано:

Вы смотрели на это? Он находится в WebView public void loadDataWithBaseURL (String baseUrl, String data, String mimeType, String encoding, String historyUrl) описание метода:

Примечание к посту 1.0. Из-за изменений в WebKit доступ к файлам активов через «file:///android_asset/» для подресурсов более ограничен. Если вы укажете нулевую или пустую строку в качестве baseUrl, вы не сможете получить доступ к файлам активов. Если baseUrl отличается от http(s)/ftp(s)/about/javascript в качестве схемы, вы можете получить доступ к файлам активов для подресурсов.

person mdelolmo    schedule 17.02.2011
comment
Спасибо, возможно, нельзя включить локальный javascript из кода, он хорошо работает при использовании mWebView.loadUrl(file:///android_asset/about.html) с включенным js. Я отметил, что функция loadData(), которую я использую в этом случае, не может получить доступ к ресурсам в сети, поэтому, возможно, загрузка всех трех файлов js в тег ‹script› является единственным доступным решением. - person elwis; 17.02.2011
comment
@elwis, вы можете проверить мой отредактированный ответ. Вы это уже читали? - person mdelolmo; 17.02.2011
comment
@mdelolmo: Да, я создаю тег ‹script› и использую loadDataWithBaseURL для загрузки веб-страницы. - person penguru; 10.04.2012
comment
stackoverflow.com/questions/3760626/ Кажется, невозможно записать файлы в папку активов. - person penguru; 10.04.2012