根据OneSignal的网站,只需添加此代码即可让用户允许该应用接收推送通知:
window.plugins.OneSignal.registerForPushNotifications();
但它并没有显示出来。并且设备无法注册。
document.addEventListener("deviceready", function() {
window.plugins.OneSignal.init( "project_id",
{googleProjectNumber: "null_if_ios",
autoRegister: false},
mobile.didReceiveRemoteNotificationCallBack);
对于Android,这很好用。无需调用registerForNotifications函数。
答案 0 :(得分:0)
以上代码适用于较旧版本的OneSignal Cordova SDK,请务必使用最新版本:https://documentation.onesignal.com/docs/cordova-sdk-setup
对于Cordova和Cordova变体,可以通过检查来解决许多问题:
cordova plugin rm onesignal-cordova-plugin
cordova plugin add onesignal-cordova-plugin
许多用户只需要进行干净的构建即可删除错误。请参阅Cordova Variants故障排除指南:https://documentation.onesignal.com/docs/troubleshooting-cordova-variants
最后,检查Github示例以比较代码: 科尔多瓦示例:https://github.com/OneSignal/OneSignal-Cordova-Example 离子示例:https://github.com/OneSignal/OneSignal-Ionic-Example