В моём примере я соединил java функции приложения в Android Studio с помощью кода Javascript на моем сайте:
В публичный класс MainActivity подключаю Javascript интерфейс:
myWebView.addJavascriptInterface(new WebAppInterface(this), "Android");
Для примера задаю на кнопку (при нажатии) - эвент вызова функции на сайте через JavaScript (Уже в коде самого сайта):
<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript">
function showAndroidToast(toast) {
Android.showToast(toast);
}
</script>
Далее функция обработки при вызове JS прописываю в MainActivity приложения в Android Studio:
public class WebAppInterface {
Context mContext;
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}
}
//
По итогу при нажатии кнопки на сайте:- мы получаем короткое TOAST сообщение в Android приложении.
Вопрос как TOAST можно заменить на простое (однотипное) Push - уведомление?
Разумеется Javascript сам будет вызывать функцию уведомление по запросу от Web сервера, но только вот делема, при закрытие приложения - естественно JS работать не будет, поэтому нужно обеспечить фоновую работу приложения.
Как бы вы это реализовали самым простым способом.