适用于Android中单个设备的多个APP ID在Urban Airship下

时间:2013-09-17 08:38:59

标签: android tags push-notification urbanairship.com

我使用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

注意:

我通过集成推送通知在我的设备中安装了应用程序。设备使用API​​D注册并保持活动为真。

重新安装App后,生成新的APID并将Active显示为True。但是,之前APID的Active状态仍然保持为True。为什么之前的APID的活动状态未更改为False。

在IOS中,新安装之后,设备令牌的状态变为非活动状态。为什么只在android中发生?

提前致谢..

1 个答案:

答案 0 :(得分:2)

来自城市飞艇支持团队的回复

每当卸载并重新安装应用程序时,Android设备都会获得一个新的APID,这只是因为GCM的工作方式以及我们的系统如何处理它。如果这对您不方便我们表示歉意,但是,这是预期的行为。一旦您尝试推送到旧的APID,我们的系统将意识到早期安装不再处于活动状态,并应将旧的APID标记为非活动状态。新的将保持活跃。

如果您足够快地卸载并重新安装应用程序,您可能会遇到类似行为的行为,其中最后一次推送旧标签的旧标签即可通过。如果发生这种情况,旧的APID将被我们的库标记为非活动状态,并且不应该再次发生该安装。我们发现这在生产中非常罕见,并且在测试期间只是一个问题。

如果您想手动停用已知不再有效的旧APID,只需直接推送即可,GCM会向我们提供不再有效的反馈。在那之后我们将不再尝试推动它。

最后,您使用的是我们的库的哪个版本?请确保您使用的是最新版本:http://urbanairship.com/resources/developer-resources - 旧版本无法可靠地处理此行为。