0
我有一个动作列表,我需要根据动作类型创建一个动作。我目前的设置覆盖了以前的方式。我该如何补救?Android NotificationCompat.Action.Builder从数组动态创建多个动作
允许使用:
"actions": [{
"type":"response",
"text": "Confirm"
}, {
"type":"response",
"text": "Decline"
}, {
"type":"info",
"text": "More Info",
"link": "http://www.notifyd.com"
}]
然后:
for (int i=0; i < actions.length(); i++) {
JSONObject action = actions.getJSONObject(i);
String type = (String)action.get("type");
if (type.equals("response")) {
Intent actionIntent = new Intent("blah blah blah");
String text = (String)action.get("text");
actionIntent.putExtra("text", text);
PendingIntent pendingAction = PendingIntent.getBroadcast(this, id, actionIntent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Action actionItem = new NotificationCompat.Action.Builder(0, text, pendingAction).build();
notificationBuilder.addAction(actionItem);
} else if (type.equals("info")) {
// logic here is fine
}
}
的问题就变成: 不管响应(其类型 '响应' 的动作)被选择在通知的,“拒绝“返回...
一如既往的任何方向,欢呼声,嘲笑,烂水果等表示赞赏!
我要去纪念这个作为回答,因为它确实是UNIQUE_REQUEST_CODE ...'''PendingIntent.getActivity(这个,我,notificationIntent,PendingIntent.FLAG_UPDATE_CURRENT); '''谢谢指出,我完全掩饰了这方面! – studiobrain
高兴地帮助你:) – FAT