[英]Send Push notification with Flutter + OneSignal for PlayerID
[英]OneSignal Unsubscribe playerID flutter
就我而言:我有 2 個選項可以推送:
我只想取消訂閱 Player ID,並保留 Segment
我見過:
OneSignalServices.instance.disablePush(true)
=> 但它禁用了我所有的推送。curl --include \ --request DELETE \ --header "Authorization: Basic YOUR_ONESIGNAL_API_KEY" \ https://onesignal.com/api/v1/players/ONESIGNAL_PLAYER_ID?app_id=YOUR_APP_ID
但是請按照我需要的 OneSignal 文檔Uninstall the app and re-install the app.
用戶登出時怎么辦?
不要根據玩家 ID 發送通知,而是使用外部用戶 ID 發送通知並將您的玩家 ID 映射到外部用戶 ID。
在您的情況下,外部用戶 ID 將是登錄時生成的隨機字符串,並作為通知令牌存儲在數據庫中。 然后將此令牌與玩家 ID 映射,當用戶注銷時,只需從數據庫中刪除此令牌即可。
涉及的步驟:
生成一個隨機字符串並將其作為通知令牌存儲在數據庫中。
將此通知令牌映射到當前玩家 ID。
讓 externalUserId = '123456789'; // 您將向 OneSignal SDK 提供外部用戶 ID
// 使用 SDK 版本 3.9.3+ 中可用的回調設置外部用戶 ID OneSignal.shared.setExternalUserId(externalUserId).then((results) { log(results.toString()); }).catchError((error) { log (error.toString()); });
映射參考鏈接: https ://documentation.onesignal.com/docs/external-user-ids#setexternaluserid-method
根據這個通知令牌發送通知。
基於外部用戶 ID 創建通知的參考鏈接: https ://documentation.onesignal.com/reference/create-notification#platform-to-deliver-to
希望這有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.