【问题标题】:OneSignal Register for Push Notification is not working in Cordova用于推送通知的 OneSignal 寄存器在 Cordova 中不起作用
【发布时间】:2015-07-16 02:05:30
【问题描述】:

根据 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 函数。

【问题讨论】:

  • 当您启动应用程序和调用 registerForPushNotifications() 函数时,您能否检查设备日志是否有任何错误?请参阅this post 以获取完整的设备日志。最好在运行您的应用程序之前通过单击垃圾桶来清除它。此外,请按照 iOS 设置指南中的 Step 5 检查以确保您的配置文件启用了“推送通知”。

标签: ios cordova onesignal


【解决方案1】:

以上代码适用于旧版本的 OneSignal Cordova SDK,请确保使用最新版本:https://documentation.onesignal.com/docs/cordova-sdk-setup

对于 Cordova 和 Cordova 变体,许多问题可以通过检查来解决:

  1. 您的 OneSignal appID 在引号之间没有任何多余的空格。
  2. 您使用的是 Cordova 6.4.0 或更新版本
  3. 如果使用 CocoaPods,请确保您安装了 1.2.0 或更高版本:https://documentation.onesignal.com/docs/cordova-sdk-setup#section-ios-requirements
  4. 您必须在实际设备上进行测试,而不是在浏览器上。
  5. 更新到最新版本的 OneSignal SDK,运行:

cordova plugin rm onesignal-cordova-plugin cordova plugin add onesignal-cordova-plugin

许多用户只需进行干净的构建即可消除错误。请参阅 Cordova 变体故障排除指南:https://documentation.onesignal.com/docs/troubleshooting-cordova-variants

最后,查看 Github 示例以比较代码: 科尔多瓦示例:https://github.com/OneSignal/OneSignal-Cordova-Example 离子示例:https://github.com/OneSignal/OneSignal-Ionic-Example

【讨论】:

    猜你喜欢
    • 2020-12-14
    • 2017-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    相关资源
    最近更新 更多