![](/img/trans.png)
[英]FCM - Sending android push notifications by device tokens and environment/group
[英]Sending push notifications to a targeted device
我有一個為在線商店創建的移動應用程序(iOS 和 Android)。 此特定版本的應用程序僅供賣家使用。 其中有一個部分用作幫助台。 基本上買家可以開票,向賣家發送消息等。所以我想要做的是每次當買家這樣做時,賣家應該在他的設備上收到推送通知。
保存買家、賣家和其他一切記錄的數據庫在單獨的服務器上運行。 我可以有某種 cron 工作來定期檢查買家打開的新案例。 我希望使用Parse來處理推送通知。
現在我遇到的問題是如何將我的數據庫服務器與 Parse 相關聯。
我目前的計划是這樣的。
應用程序啟動,賣家首次登錄。 Parse SDK 向其服務器注冊設備。 除此之外,使用單獨的 Web 服務,我希望保存 Parse 生成的唯一 ID(經過研究,我發現合適的唯一 ID 稱為Installation ID )以及我的數據庫中登錄的賣家 ID。
當 cron 作業找到一個打開的案例時,它會檢索它應該去的賣家 ID。 連同它,安裝 ID。
我的服務器發出一個 HTTP 請求,以使用 Parse 的 REST API 向具有該安裝 ID 的設備發布推送通知。
一題。 他們沒有在他們的文檔中指定傳遞安裝 ID 的方法。
我想知道這是否可能? 或者如果有更好的方法來解決這個問題?
很確定這是可能的。 首先,你可以得到installationId
通過PFInstallation
:
PFInstallation.currentInstallation().installationId // swift
或者
[PFInstallation currentInstallation].installationId // Objective-C
不知道android,但可能類似
ParseInstallation.getCurrentInstallation().getInstallationId() // Java
https://parse.com/docs/osx/api/Classes/PFInstallation.html https://parse.com/docs/android/api/com/parse/ParseInstallation.html
然后您實際上必須發送推送:查看“使用高級定位”下的Parse REST 指南。
您可以使用如下所示的 curl 查詢:
curl -X POST -H "X-Parse-Application-Id: %appId%" -H "X-Parse-REST-API-Key: %api key%" -H "Content-Type: application/json" -d '{ "where": { "installationId": "%installationId%" }, "data": { "alert": "The Giants scored a run! The score is now 2-2." } }' https://api.parse.com/1/push
這里的重要部分是{ "where": { "installationId": "%installationId%" }
它將推送消息僅發送到與查詢匹配的安裝 - 正是具有給定 ID 的安裝。
我剛剛嘗試並僅在特定設備上收到推送消息:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.