簡體   English   中英

Android推送通知GCM

[英]Android push notification GCM

我正在為我的應用程序使用android GCM向用戶發送推送通知。 我正在關注本教程

http://www.androidhive.info/2012/10/android-push-notifications-using-google-cloud-messaging-gcm-php-and-mysql/

但是在本教程中顯示,我們可以將推送通知發送到單個設備。 但是我想一次向所有用戶發送推送通知。 那么我該如何實現這種技術。

我已經面臨過同樣的問題並解決了。 要將推送通知立即發送給所有用戶,您必須完成所提到的教程中列出的所有操作。 但是您必須更改兩個文件: index.phpsend_message.php

  1. index.php

    一種。 將JavaScript代碼替換為以下代碼:

     $(document).ready(function(){ }); function sendToAll(){ var data = $("#sendtoall").serialize(); $("#sendtoall").unbind('submit'); $.ajax({ url: "send_message.php", type: 'GET', data: data, beforeSend: function() { }, success: function(data, textStatus, xhr) { $('.txt_message').val(""); }, error: function(xhr, textStatus, errorThrown) { } }); return false; } 

    b。 將body標簽內的代碼替換為以下內容(跳過前五行):

     <div class="container"> <h1>No of Devices Registered: <?php echo $no_of_users; ?></h1> <hr/> <ul class="devices"> <?php if ($no_of_users > 0) { ?> <li> <form id="sendtoall" name="" method="post" onsubmit="return sendToAll()"> <div class="send_container"> <textarea rows="3" name="message" cols="25" class="txt_message" placeholder="Type message here"></textarea> <?php while ($row = mysql_fetch_array($users)) { ?> <input type="hidden" name="regId[]" value="<?php echo $row["gcm_regid"]; ?>"/> <?php } ?> <input type="submit" class="send_btn" value="Send To All" onclick=""/> </div> </form> </li> <?php } else { ?> <li> No Users Registered Yet! </li> <?php } ?> </ul> </div> <div class="clear"></div> 
  2. send_message.php

    替換行:

     $registatoin_ids = array($regId); 

     $registatoin_ids = $regId; 

您還可以將集成了推送模塊的“后端即服務”。 因此,您可以從后端通知所有參與者。 我有一段時間用過“ apiomat ”,很滿意

是的,您可以使用GCM發送,因為它也允許多播消息服務。

使用下面的格式:

{
  "registration_ids" : ["APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx..."],
  "data" : {
    ...
  },
}

此處的key registration_ids值應如下所示:

一個字符串數組,其中包含接收消息的設備(注冊ID)的列表。 它必須包含至少1個,最多1000個注冊ID。 要發送多播消息,必須使用JSON。 要將單個消息發送到單個設備,可以使用僅包含1個注冊ID或純文本的JSON對象(請參見下文)。 需要。

希望對您有幫助。

GCM主題消息傳遞允許您的應用服務器將消息發送到已選擇加入特定主題的多個設備。 基於發布/訂閱模型,主題消息支持每個應用最多支持一百萬個訂閱。 應用服務器將消息發送給主題,而消息的有效負載最大為2KB,GCM處理消息路由並將消息可靠地傳遞到正確的設備。 例如,天氣預報應用程序的用戶可以選擇“惡劣天氣警報”主題,並接收風暴威脅特定區域的通知。 要向所有用戶發送消息,可以使用主題。
資料來源:Google Developer網站

如果您看一看,可以看到所有用戶都在注冊一個主題。 您可以將主題發送給所有用戶。

要發送到主題,您必須使用此頁面https://developers.google.com/cloud-messaging/topic-messaging

並且為了測試推送通知,您可以在chrome擴展程序中使用“高級其余客戶端”。 推送通知測試

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM