【问题标题】:Using notificationOpenedCallBack Onesignal with Cordova在 Cordova 中使用 notificationOpenedCallBack Onesignal
【发布时间】:2016-08-14 22:27:34
【问题描述】:

我正在使用 OneSignal 为推送通知编写我的第一个 Android Cordova 应用程序。在 Google 上设置 OneSignal 和启用云消息传递的过程非常简单。完成后,我开始创建一个简单的 jQuery Mobile Cordova 应用程序并修改了 init 函数 app.js

function init() 
{
 window.plugins.OneSignal.setLogLevel({logLevel:4,visualLevel:4});
 var notificationOpenedCallback = function(jsonData) {
  alert(JSON.stringify(jsonData));
 window.plugins.OneSignal.enableVibrate(true);
 window.plugins.OneSignal.enableSound(true);

};

window.plugins.OneSignal.init('one-signal-id', {googleProjectNumber: '项目编号'}, 通知打开回调); }

构建 APK 后,我将其安装在我的 Android 设备上,并收到两条 INFO 消息 - 一条来自 Google,一条来自 OneSignal。我假设这是因为我有一个日志级别设置为 4 的调试版本。

然后我继续通过 OneSignal 发送推送。该消息出现在已发送消息列表中。但是,我的手机上什么也没有发生——我原以为它至少会振动。

另外,我想加入 notificationOpened 事件。从OneSignal docs 中不清楚应该如何做到这一点。我正在使用 OneSignal 和推送通知的第一个小时,所以我假设我在这里忽略了一些东西。我会感谢任何能让我走上正轨的人。

【问题讨论】:

    标签: cordova jquery-mobile push-notification onesignal


    【解决方案1】:

    如果您的应用处于焦点状态,则默认情况下不会显示通知。您可以通过将enableNotificationsWhenActive 设置为true 来更改此设置。

    OneSignal Cordova 设置指南中的Step 2.1 显示了在打开通知时设置回调处理程序。

    var notificationOpenedCallback = function(jsonData) {
      console.log('didReceiveRemoteNotificationCallBack: ' + JSON.stringify(jsonData));
    };
    
    window.plugins.OneSignal.init("b2f7f966-d8cc-11e4-bed1-df8f05be55ba",
                                   {googleProjectNumber: "703322744261"},
                                    notificationOpenedCallback);
    

    jsonData 的结构与一些示例一起记录在notificationOpenedCallback 中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 2022-08-18
      • 1970-01-01
      • 2018-01-24
      • 1970-01-01
      • 2021-05-14
      • 2015-07-16
      相关资源
      最近更新 更多