我正在阅读this previous thread,因为我在将设备令牌转换为可以在POST中发送的内容时出现问题。该问题已解决,我的令牌正在正确发送到服务器,我们将其存储在用户的帐户记录中。
这就是我需要做的一切,对吧?如果我们使用该令牌进行通知,它将转到该用户,并且只有该用户?或者我错过了一些非常关键的东西?
答案 0 :(得分:1)
当你说'用户'你的意思是你的应用可以让不同的用户登录和退出吗?
要处理此问题,您可以设置一个表格,将user_id
映射到push_token
和device_id
。您还应该向此地图添加enabled
标志 - 这意味着用户当前已在该设备上登录。
从概念上讲,虽然设备只有一个推送令牌,但它可能有很多用户,而用户可能有很多设备。
当用户在设备上登录您的应用时,您会发送user_id
,push_token
和device_id
并在表格中设置enabled=TRUE
。如果此用户/设备组合从未存在,请添加到您的表格中。
当用户在设备上退出您的应用时,您会发送user_id
和device_id
并在表格中设置enabled=FALSE
。
如果发生的事件会触发向user_id
用户推送,那么您可以查找与push_tokens
和user_id
相关联的enabled=TRUE
。然后你可以简单地推送到那些令牌。
答案 1 :(得分:0)
@dmorrow是对的。此外,您需要制作具有相同应用ID的.pem证书才能使服务器推送通知生效,请检查此ANSWER