我的問題是一樣的,因爲這一個:Android設備特定推送通知
android device specific push notifications by using azure mobile services
但我使用的.Net後端。這是我發送通知的部分:
Dictionary<string, string> data = new Dictionary<string, string>() { { "message", "this is the message" } };
GooglePushMessage message = new GooglePushMessage(data, TimeSpan.FromHours(1));
Services.Push.SendAsync(message);
但是沒有辦法傳入註冊ID。
UPDATE
我使用GooglePushMessage的有效載荷性能也試過:
GooglePushMessage message = new GooglePushMessage();
message.JsonPayload = JsonConvert.SerializeObject(new { registration_id = "blablabla", data = new { message = "77" } });
事實證明,這是忽略了registration_id財產,因爲我仍然得到通知我的設備。
我想實現的是從第三方獲取API調用,並使用存儲在我的數據庫中的註冊ID將通知發送到特定設備。
您必須在該JSON對象內包含registration_id(我猜,消息是JSON對象)。 – user1728071 2015-02-09 11:38:14
在JSON對象中包含registration_id不會改變結果,我可以設置一個隨機的registration_id,並且仍然會在我的設備上獲取通知。 – DevMonster 2015-02-10 08:58:40
這很有趣。除非您在json中指定registration_id,否則GCM不會向所有人發送通知。發送JSON對象時一定有問題。發送到GCM時請檢查消息內容。 – user1728071 2015-02-10 10:19:51