GCM - 已显示通知负载但如何处理 "click"
GCM - Notification Payload shown but how to handle "click"
我已经使用 GCM Messaging Concepts and Options - Notifications and data in the message payload 实现了 GCM。
仅数据有效载荷按预期运行良好。但现在我正在发送数据和通知负载。通知按预期显示在设备上。
但是如何处理用户 clicks/touches 的通知。我知道如何使用 data
负载来做到这一点。这是如何使用 notification
有效载荷完成的?
我相信您正在寻找的是在 NotificationBuilder 函数中创建一个 PendingIntent。这样,当用户单击通知栏中的通知时,它将启动该待定 Intent。
我自己找到了答案。通知负载中有一个 属性 可以传递一个动作。
例如:
GCM 消息
{
"data" : {
// some data
},
"notification" : {
// title, body etc
click_action = "com.my.click",
},
"id" : "id1"
}
AndroidManifest
<activity
android:name=".activities.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="com.my.click" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
更多信息
我已经使用 GCM Messaging Concepts and Options - Notifications and data in the message payload 实现了 GCM。
仅数据有效载荷按预期运行良好。但现在我正在发送数据和通知负载。通知按预期显示在设备上。
但是如何处理用户 clicks/touches 的通知。我知道如何使用 data
负载来做到这一点。这是如何使用 notification
有效载荷完成的?
我相信您正在寻找的是在 NotificationBuilder 函数中创建一个 PendingIntent。这样,当用户单击通知栏中的通知时,它将启动该待定 Intent。
我自己找到了答案。通知负载中有一个 属性 可以传递一个动作。
例如:
GCM 消息
{
"data" : {
// some data
},
"notification" : {
// title, body etc
click_action = "com.my.click",
},
"id" : "id1"
}
AndroidManifest
<activity
android:name=".activities.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="com.my.click" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>