4

我想为我的应用创建一个唯一 ID。如以下链接所示

我想使用 InstanceID 作为唯一 ID。

String uniqueID = InstanceID.getInstance(context).getId();

由于某些配置设置,我的服务器希望唯一 ID 仅使用小写字母。作为实例 id 给出了小写和大写字符。我正在考虑将每个实例 ID 字符转换为其相应的 ASCII 值,并将其作为我的唯一 ID 发送。这会是正确的方法吗?

另外,我正在阅读有关 FirebaseInstaceId

https://firebase.google.com/docs/reference/android/com/google/firebase/iid/FirebaseInstanceId

是否建议使用 FirebaseInstanceId 而不是 Instance Id?我没有在任何地方的文档中找到它。请建议。

谢谢。

4

1 回答 1

4

使用 InstanceID 作为应用程序的唯一 ID应该没问题,但是,根据您的用例,您必须注意 InstanceID 会在应用程序卸载时发生变化,因为它代表每个应用程序实例(因此命名为InstanceId)每个设备都不同。

如何处理数据完全取决于您。只要您能够相应地使用它。

InstanceId 和 FirebaseInstanceId 在后台调用相同的服务,只有 FirebaseInstanceId 是您使用 FCM 时要使用的对象。没有尝试同时使用两者,但是调用getId应该为同一个实例返回相同的值(除非库中有不同的东西)。

另请参阅此可能有用的帖子

于 2017-06-26T02:46:28.583 回答