【问题标题】:Android Oreo devices not receiving push notifications sent from AWS SNSAndroid Oreo 设备未收到从 AWS SNS 发送的推送通知
【发布时间】:2018-09-11 07:10:30
【问题描述】:

根据新的 android 政策,我们在我的 cordova 应用程序中将目标 SDK 设置为 26(API 级别 26)。在此之后,android oreo 设备不会收到使用 GCM 从 AWS SNS 发送的任何推送通知。

在搜索 SO 时,看起来我们需要在消息负载中设置 android_channel_id 一些字符串值。即使在这样做之后,Android Oreo 设备也不会收到消息。我尝试直接从 AWS SNS 控制台以及使用 SNSClient PublishRequest 通过我们的 Java Spring REST API 发送。

我们是否需要使用 Java 中的 AWS SNS 客户端创建通知通道?如果是这样,是否有任何使用 AWS SNS PublishRequest 的示例代码可用? 或者,只是在消息有效负载中进行更改?有人可以帮忙吗?谢谢。

【问题讨论】:

  • 使用 NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context, notificationId);而不是 NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(notificationId);
  • @AshishKumar,实际上它不是原生安卓应用。这是一个使用离子框架的混合应用程序。推送通知使用 AWS SNS SNSClient.PublishRequest 从 Java Spring API 发送
  • 至少,如果我们知道 Android oreo 设备的最新消息有效负载,它确实适用于任何使用 AWS SNS 控制台的人,我们可以在 API 中使用该有效负载

标签: android push-notification amazon-sns notification-channel


【解决方案1】:

刚刚发现理论上的解决方案是将phonegap推送插件升级到2.1.0以上,它会创建默认通知通道。

但是为了升级push插件,我们可能需要升级cordova-android版本(>= 7.1.0),所有其他插件可能会抛出不兼容错误,可以通过升级这些插件来解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 2016-01-03
    相关资源
    最近更新 更多