2014-07-24 55 views
2

假設我有兩個具有消息傳遞組件的應用程序用戶。使用解析,是否有一種方法可以將推送通知從一個用戶發送到另一個用戶?解析目標推送通知特定用戶

編輯:假設我有辦法來唯一地標識用戶,例如電子郵件地址

回答

4

是其可能的。

  1. 首先啓用客戶端推入你的解析管理控制檯

  2. 使用ParsePush類,我們有一個選項來設置ParseInstallation查詢,那裏的通知,將針對特定用戶組,

https://parse.com/docs/push_guide#options-data/iOS

但是你可能無法發送到特定用戶,因爲ParseInstallation表不具有查詢約束中的此列。

所以我加入ParseInstallation表一個新領域「用戶名」和更新的用戶名每當用戶身份登錄。

然後在發送的推動下,建立在此基礎上的用戶名,在下面的ParseInstallation查詢例子是爲Android,它會類似的其他操作系統

JSONObject data = new JSONObject(); 
    try { 
     data.put("action", "com.bt.yana.GOT_MESSAGE"); 
     data.put("from", ParseUser.getCurrentUser().getUsername()); 
    }catch (Exception e){ 
     e.printStackTrace(); 
     return; 
    } 


    ParsePush parsePush = new ParsePush(); 
    parsePush.setData(data); 

    ParseQuery<ParseInstallation> parseQuery = ParseQuery.getQuery(ParseInstallation.class); 
    if(toUser!=null) { 
     parseQuery.whereEqualTo("username", toUser); 
     parsePush.setQuery(parseQuery); 
     parsePush.sendInBackground(); 
    } 
+0

啊,太好了,謝謝!你能否解釋如何添加字段「用戶名」將起作用?它只是Parse.getCurrentInstallation()。放(「用戶名」,用戶名),然後保存此安裝? – Aneem

+0

@Aneem轉到分析儀表板中的數據瀏覽器,添加一列,我試着從代碼中做出來,但是由於某些原因,例如用戶,安裝 – ThiyagaB