Вызовите метод Java из локального файла HTML - PullRequest
1 голос
/ 29 ноября 2011

У меня есть локальный html-файл в папке assets.Я загружаю этот файл в мой WebView и хочу вызвать статический метод Java с моей локальной веб-страницы.

Это то, что я хочу сделать;

<div class="content">
<div class="welcome">
    <p>GeneralConstants.getWelcomeMessage()</p>
</div>

Я хочу вызвать getWelcomeMessage() метод с моей локальной веб-страницы.

Ответы [ 4 ]

2 голосов
/ 29 ноября 2011

Вы можете использовать JAVA Script Interface для связи между функцией Android и вашим методом java-скрипта.

JavaScript, работающий внутри WebView, может вызывать код в вашей деятельности.Вы можете использовать это, чтобы ваши JavaScript-действия вызывали такие действия, как запуск нового действия, или его можно использовать для извлечения данных из базы данных или ContentProvider.API для этого очень прост: просто вызовите метод addJavascriptInterface на вашем WebView.Вы передаете объект, методы которого вы хотите открыть для JavaScript, и имя, которое будет использоваться при совершении вызовов.

Посмотрите здесь хороший пример для Android - Webview и здесь .

0 голосов
/ 29 ноября 2011

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

Однако ваша HTML-страница может определять интерфейс JavaScript, и ваш код Java может получить к ним доступ. Таким образом, вместо того, чтобы HTML-страница извлекала приветственное сообщение из Java-кода, у вас есть Java-код, предоставляющий приветственное сообщение для HTML-страницы.

webView.loadUrl("javascript:setWelcomeMessage('Welcome!')");
0 голосов
0 голосов
/ 29 ноября 2011

Возможна двусторонняя связь между JavaScript и вашим приложением через WebView.addJavascriptInterface(). Проверьте этот пример:

http://android -developers.blogspot.com / 2008/09 / с использованием-webviews.html

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