我使用Tags处理Urban Airship推送通知。对于每一个新的安装UA都是新的
受众群体下的应用ID。在我的应用中,我有两种登录选项:1.Male 2.Female
从UA我通过添加适当的标签发送消息。
案例1:
首次安装时,我的设备注册了 选定的标签(我记录为男性)和APP ID。
在这种情况下一切正常。
案例2:
如果我从设备中删除了该应用并再次安装并记录为 不同的用户(例如:女性)。
现在,在受众群体下,我的设备已注册了女性标签和新应用 ID。 (现在我的设备在UA下使用新的APP ID注册)
如果我通过添加所需的女性标签从UA发送推送,请按下接收 到我的设备。
但在少数情况下,来自Male标签的消息也会被设备收到。
观察:
现在在UA下,我的设备有两个带有两个不同标签的APP ID。
可能是因为我的设备收到了两个标签消息 与所选标签
需要解决方案:
为什么android会为每个新安装维护新的APP ID?
如何在新安装前从UA中删除我设备的先前APP ID
(OR)
如何使用新的APP ID覆盖以前的APP ID
注意:
我通过集成推送通知在我的设备中安装了应用程序。设备使用APID注册并保持活动为真。
重新安装App后,生成新的APID并将Active显示为True。但是,之前APID的Active状态仍然保持为True。为什么之前的APID的活动状态未更改为False。
在IOS中,新安装之后,设备令牌的状态变为非活动状态。为什么只在android中发生?
提前致谢..
答案 0 :(得分:2)
来自城市飞艇支持团队的回复:
每当卸载并重新安装应用程序时,Android设备都会获得一个新的APID,这只是因为GCM的工作方式以及我们的系统如何处理它。如果这对您不方便我们表示歉意,但是,这是预期的行为。一旦您尝试推送到旧的APID,我们的系统将意识到早期安装不再处于活动状态,并应将旧的APID标记为非活动状态。新的将保持活跃。如果您足够快地卸载并重新安装应用程序,您可能会遇到类似行为的行为,其中最后一次推送旧标签的旧标签即可通过。如果发生这种情况,旧的APID将被我们的库标记为非活动状态,并且不应该再次发生该安装。我们发现这在生产中非常罕见,并且在测试期间只是一个问题。
如果您想手动停用已知不再有效的旧APID,只需直接推送即可,GCM会向我们提供不再有效的反馈。在那之后我们将不再尝试推动它。
最后,您使用的是我们的库的哪个版本?请确保您使用的是最新版本:http://urbanairship.com/resources/developer-resources - 旧版本无法可靠地处理此行为。