2015-05-06 137 views
4

根据OneSignal的现场工作只需添加该代码要求用户允许该应用接收推送通知: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函数。

+1

您可以检查设备日志中的任何错误,当您启动应用程序和registerForPushNotifications()函数被调用时? 请参阅[本文](http://stackoverflow.com/questions/24484817/how-to-get-device-console-in-xcode6)以获取完整的设备日志。在运行应用程序之前,最好通过单击垃圾箱清除它。同时检查以确保您的供应配置文件在其上启用了“推送通知”,方法是按照[步骤5](http://documentation.onesignal.com/v2.0/docs/generating-an-ios-push-certificate#5 -provisioning-profiles)在iOS设置指南中。 – jkasten

回答

0

上面的代码是一个更旧版本的OneSignal科尔多瓦SDK的,请务必使用最新版本:

    https://documentation.onesignal.com/docs/cordova-sdk-setup

    对于科尔多瓦和科尔多瓦变种,许多问题可以通过检查固定

  1. 您的OneSignal appID在引号之间没有任何额外的空格。
  2. 您正在使用科尔多瓦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

许多用户只需要简单地做一个干净的构建以去除误差。请参阅科尔多瓦变故障排除指南:https://documentation.onesignal.com/docs/troubleshooting-cordova-variants

最后,结账GitHub的例子来比较代码: 科尔多瓦例:https://github.com/OneSignal/OneSignal-Cordova-Example 离子实例:https://github.com/OneSignal/OneSignal-Ionic-Example

相关问题