Взаимодействие java и html5

301
03 ноября 2017, 08:55

Нужно поставить обработчиком кода метод из java. Javascrypt не поможет. Читал, что можно через <%@page import="..." %>. Но браузер и эмулятор не воспринимают эти теги и просто пишут текст

Answer 1

Если вам нужно вызвать java-метод из js-кода страницы, можно использовать JavascriptInterface.

В коде android-приложения:

public class WebAppInterface {
    Context mContext;
    WebAppInterface(Context c) {
        mContext = c;
    }
    @JavascriptInterface
    public void showToast(String toast) {
        Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
    }
}
WebView webView = (WebView) findViewById(R.id.webview);
webView.addJavascriptInterface(new WebAppInterface(this), "Android");

В коде страницы:

<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript">
    function showAndroidToast(toast) {
        Android.showToast(toast);
    }
</script>
READ ALSO
Как правильно сделать запрос по условию с датой к БД в Java (JDBC)

Как правильно сделать запрос по условию с датой к БД в Java (JDBC)

Вопрос состоит в том что я хочу правильно оформить запрос, да бы не допустить в будущем SQL-инъекций но что-то не получается, помогите разобраться,...

315
Дубликаты в JPA

Дубликаты в JPA

Как в spring data jpa бороться с дубликатами? Например мне нужно сохранить профиль с листом тегов и со связью многие ко многимПри сохранении отдельно...

263
Как преобразовать xml конфигурацию &lt;login-config&gt; в web.xml в java class?

Как преобразовать xml конфигурацию <login-config> в web.xml в java class?

Как преобразовать xml конфигурацию в webxml в java class?

236