[英]Push Notification from client
我正在測試推送通知,這樣當我按下應用程序上的按鈕時,所有安裝了相同應用程序的其他人都會收到推送通知。 發送通知的人一無所獲。
我一直在這里尋找類似的查詢,但無法正常工作。 就推送本身而言,我的日志顯示“已發送解析推送”。 但是我沒有在任何物理設備或仿真器上收到任何通知。
請注意,我正在使用Parse ,並且設置正確完成,並且能夠從Parse.com網站發送通知。 僅在嘗試從客戶端設備發送時遇到麻煩。
我是否應該為此顯式創建頻道和用戶? 我嘗試過,但只能選擇創建有條件的受眾。
public void sendParse(View view){
try {
// Associate the device with a user
ParseInstallation installation = ParseInstallation.getCurrentInstallation();
installation.put("user", ParseUser.getCurrentUser());
installation.saveInBackground();
ParseQuery pushQuery = ParseInstallation.getQuery();
pushQuery.whereEqualTo("channels", "Everyone");
pushQuery.whereNotEqualTo("user", ParseUser.getCurrentUser());
pushQuery.whereEqualTo("user", ParseUser.getCurrentUser());
ParsePush push = new ParsePush();
push.setQuery(pushQuery);
push.setMessage("Testing 1 2 3...");
push.sendInBackground(new SendCallback() {
@Override
public void done(ParseException e) {
Log.i("zx", "Push is sent!");
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
在你的代碼中
pushQuery.whereNotEqualTo("user", ParseUser.getCurrentUser());
pushQuery.whereEqualTo("user", ParseUser.getCurrentUser());
這兩行不兼容,應刪除“ whereEqualTo”行。
您可以做的另一件事是在回調中:
...
public void done(ParseException e){
if(e!=null)
e.printStackTrace();
...
}
檢查是否有錯誤
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.