2

我使用 Delphi XE7 创建了一个移动应用程序。该程序通过 Kinvey 和 GCM 发送推送通知。首次安装 APK 时,它会发送一个推送通知,该通知工作正常。秒次(同一设备上的同一个APP)发送两次,第三次,三次,以此类推。我发现问题是由在 Kinvey/users 下添加更多 ID 引起的。因此,如果我手动删除所有 ID 并再次安装 APK,它将正常工作。

因此,我真的很想知道在同一设备上新安装APK时是否可以自行清除ID。

提前致谢!

在此处输入图像描述

4

2 回答 2

1

似乎您正在使用TBackendPush组件,而不是它的设计用途。

组件名称中的“Backend”强烈表明该组件必须在服务器端应用程序中使用,这可以触发向所有注册设备发送广播消息。

将其放在客户端可能会导致意外结果。此外,通过将其包含在移动应用程序中,您可以在 APK 文件中包含 Kinvey 帐户凭据。凭据可以被其他人提取,然后用于从您的 Kinvey 帐户发送消息。

如果您需要一种发送推送通知的方法,有两种方法 - 但是我不知道 Kinvey 是否支持这两种方法:

于 2014-11-27T14:13:53.520 回答
1

我有同样的问题。AFAIK 答案是否定的,安装新的 APK 或卸载应用程序不会从后端提供商(Kinvey、Parse、Azure 通知中心)注销您的 ID。

我的解决方案是在 gcm 有效负载中添加一个collapse_key

Ps:在我的情况下,通知中心的注册过期(我不知道 Kinvey 是否也有)所以推送是在注册的同时收到的,但是注册崩溃了,所以你只需“接收”一个,直到旧的注册过期

于 2014-11-27T14:19:46.500 回答