[英]How do I trigger a notification from a phonegap app without a push service?
我遵循了PhoneGap文檔上的教程,該教程在其示例應用程序中運行良好,但是在制作自己的應用程序時,我不知道如何將PushNotification
對象放入我的單頁應用程序中。
我猜想Phonegap正在基於config.xml構建一個神秘的cordova.js文件,並且PushNotification
已添加到此神秘文件內的根window
范圍。
到目前為止,我已經嘗試過...
<script src="cordova.js"></script>
<plugin name="phonegap-plugin-push"
...位於我的config.xml文件中 if (typeof PushNotification === 'undefined') { alert("No PushNotification"); }
if (typeof PushNotification === 'undefined') { alert("No PushNotification"); }
到我應用的JavaScript。 在瀏覽器中進行本地測試(顯然未找到cordova文件)以及在Android設備上通過PhoneGap應用進行測試時,這似乎總是會觸發。 push.on('notification', function(data) {
console.log('notification event');
navigator.notification.alert(
data.message, // message
null, // callback
data.title, // title
'Ok' // buttonName
);
});
僅當應用收到推送通知(通知事件)時,才會觸發調用上述事件處理程序。
當您使用phonegap-plugin-push時 ,它就是這樣開發的。 否則,您無法觸發它。 僅在收到推送通知時發生。
您只需添加插件,然后在應用程序中添加這些行即可。 這樣可以正確接收通知。 根據您的應用使用cordova或phonegap添加插件,
cordova plugin add phonegap-plugin-push
phonegap plugin add phonegap-plugin-push
然后在PushNotification
直接在您的js
文件中啟動OnDeviceReady
,
var push = PushNotification.init({
android: {
"senderID": "XXXXXXXX" //Your sendeer ID from Firebase Cloud Messenger (FCM)
},
browser: {
pushServiceURL: 'http://push.api.phonegap.com/v1/push'
},
ios: {
alert: "true",
badge: "true",
sound: "true"
},
windows: {}
});
push.on('registration', function(data) {
// data.registrationId
//store this in your server for future use
});
push.on('notification', function(data) {
// data.message,
// data.title,
// data.count,
// data.sound,
// data.image,
// data.additionalData
});
push.on('error', function(e) {
// e.message
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.