gpt4 book ai didi

java - Urban Airship 推送通知

转载 作者:太空宇宙 更新时间:2023-11-04 14:04:58 26 4
gpt4 key购买 nike

我想从 Urban Airship 发送的额外键值中获取值。请帮助如何获得这些值。我能够收到推送通知。但我不知道如何从有效负载中获取数据。

public class IntentReceiver extends BaseIntentReceiver {

private static final String TAG = "IntentReceiver";
private String video_id ="123456";

@Override
protected void onChannelRegistrationSucceeded(Context context, String channelId) {
Log.i(TAG, "Channel registration updated. Channel Id:" + channelId + ".");

// Broadcast that the channel updated. Used to refresh the channel ID on the main activity.
LocalBroadcastManager.getInstance(context).sendBroadcast(new Intent(MainActivity.ACTION_UPDATE_CHANNEL));
}

@Override
protected void onChannelRegistrationFailed(Context context) {
Log.i(TAG, "Channel registration failed.");
}
@Override
protected void onPushReceived(Context context, PushMessage message, int notificationId) {
Log.i(TAG, "Received push notification. Alert: " + message.getTitle() + ". Notification ID: " + notificationId);


@Override
protected void onBackgroundPushReceived(Context context, PushMessage message) {
Log.i(TAG, "Received background push message: " + message);
}

@Override
protected boolean onNotificationOpened(Context context, PushMessage message, int notificationId) {
Intent launch = new Intent(Intent.ACTION_MAIN);
launch.setClass(UAirship.shared().getApplicationContext(),
MainActivity.class);
launch.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
launch.putExtra("NotificationMessage", "rich push notification recieved");
context.startActivity(launch);
/*//pending intent
Intent notificationIntent = new Intent(context, MainActivity.class);
Notification notification = new Notification();
notificationIntent.putExtra("NotificationMessage", "rich push notification recieved");
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingNotificationIntent = PendingIntent.getActivity(context,0,notificationIntent,PendingIntent.FLAG_UPDATE_CURRENT);
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notification.setLatestEventInfo(context, "", "", pendingNotificationIntent);*/
return false;
}

@Override
protected boolean onNotificationActionOpened(Context context, PushMessage message, int notificationId, String buttonId, boolean isForeground) {
Log.i(TAG, "User clicked notification button. Button ID: " + buttonId + " Alert: " + message.getAlert());
return false;
}


@Override
protected void onNotificationDismissed(Context context, PushMessage message, int notificationId) {
Log.i(TAG, "Notification dismissed. Alert: " + message.getAlert() + ". Notification ID: " + notificationId);
}
}

最佳答案

要获取额外数据,请使用消息上的 getPushBundle。所以如果我有一个叫做“行动”的东西,那就是这个。

    Bundle pushBundle = message.getPushBundle();

String action = null;
if (pushBundle != null) {
action = pushBundle.get("action").toString();
}

关于java - Urban Airship 推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28956390/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com