[英]Android WebView push notification?
閱讀將JavaScript 代碼綁定到 Android 代碼的文檔條目。
這允許您使用 javascript 來觸發 android 代碼的執行。
首先,您必須在 android 上注冊Javascript 接口,以便您可以從 javascript 觸發 android 代碼。
JAVA
WebView webView = (WebView) findViewById(R.id.webview);
webView.addJavascriptInterface(new WebAppInterface(this), "Android");
並定義一個方法,如果調用 javascript,它會執行您的操作。 在這個例子中顯示祝酒詞。
public class WebAppInterface {
Context mContext;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
}
/** Show a toast from the web page */
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}
}
↑ 您需要更改該部分以顯示您的推送通知。 ↑
然后你可以像這樣從javascript觸發android代碼:
<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript">
function showAndroidToast(toast) {
Android.showToast(toast);
}
</script>
我自己沒有嘗試過。 但我會嘗試創建一個 javascript 方法,它會在一定的時間間隔內向服務器發出 ajax 請求,並檢查是否有新的通知要發送,如果為真,則調用 android 代碼來顯示消息。
但是,您必須確保只以某種方式顯示一次通知......也許設置一個包含通知 ID 的 cookie 並將其設置為 true,這樣 android 代碼就不會再次被觸發。
您需要提供通知,例如 JSON 格式的 .json 文件。 你可以將那個.json 文件上傳到你的網絡服務器的某個地方。 然后將內容傳遞給android並進行相應的解析。
一種簡單的解決方法是使用JSInterafce - 將 webview 與本機通信。 教程
在該 JSInterface 傳遞中,通知所需的參數然后使用 android 系統通知 API 生成通知。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.