others - 在android中,如何读取一个推送通知消息的信号?

我需要读一下信号通知 information.Depends,我需要更改我的电子商务应用程序中产品的交付状态。

如何读取它?

时间:

以下是在收到通知时如何运行自定义代码的OneSignal指南:

  • 打开可用的( iOS ) 或者静默通知( Android ) 字段。 这将导致你的应用程序在收到( 即使它没有被点击)的通知时自动在后台被自动唤醒。 自定义代码必须用本机代码。Android上的Java和 Swift 上的objective-c 或者编写。 请参阅Apple的内容 - 适用于iOS和我们的Android背景数据指南,了解有关接收和处理活动的详细信息。
  • 当出现上述情况时,我们提供一个 API,你可以使用它来运行定制代码。 自定义代码可以在设备上保存通知内容的副本,以便在下次启动应用程序时在 Activity 提要中显示。 或者它可以在你的服务器上保存一个副本。

通知可以包含将传递给自定义代码的元数据( 提供方式为"数据"在 OneSignal API中) 。

添加


compile 'com.onesignal:OneSignal:[3.7.1, 3.99.99]'



在android下添加这里代码


manifestPlaceholders = [onesignal_app_id:"app_id Enter here",


 onesignal_google_project_number:"REMOTE"]



你需要扩展NotificationsReceiveHandler并将它的设置为OneSignal实例。

在这个例子中,我捕获了通知,因为它接收到了通知,我正在检查 NotificationsType 。

为了更好地了解客户端的通知角色,NotificationsType是我在服务器后端创建的对象。


public class CustomNotificationReceivedHandler implements OneSignal.NotificationReceivedHandler {



@Override


public void notificationReceived(OSNotification notification) {



 try {


 NotificationsType type = NotificationsType.fromValue(notification.payload.additionalData.optInt("type"));


 if (type.getValue() == NotificationsType.NEW_MESSAGE.getValue()) {


 notification.displayType = OSNotification.DisplayType.None;



 final Message message = new Gson().fromJson(notification.payload.additionalData.getString("payload"), Message.class);



 EventBus.getDefault().post(new NewMessageReceived(message));


 }


 } catch (Exception e) {


 e.printStackTrace();


 }


}


}



...