将实例ID用作Android应用的唯一标识符

4
我希望为我的应用程序创建一个唯一的ID。如下link所示。
我想使用InstanceID作为唯一标识符。
String uniqueID = InstanceID.getInstance(context).getId();

由于某些配置设置,我的服务器只接受小写字母作为唯一标识符。但实例ID包含大小写字符。我考虑将每个实例ID字符转换为其对应的ASCII值,并将其作为我的唯一标识符发送。这样做是否正确?
此外,我正在阅读有关FirebaseInstaceId的资料。

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

在使用FirebaseInstanceId和Instance Id之间,是否建议使用FirebaseInstanceId?我没有在文档中找到相关的说明。请给予建议。

谢谢。


更改服务器设置以接受大写字母? - creativecreatorormaybenot
现在还不可能。我只能从设备端做一些事情。 - MobileAppDeveloper
1个回答

4
使用InstanceID作为您的应用程序的唯一标识应该没问题,但是根据您的用例,需要注意的是,每当卸载应用程序时,InstanceID都会更改,因为它代表每个应用程序实例(因此命名为InstanceId),并且每个设备都不同。
您如何处理数据完全取决于您。只要您能够相应地使用它即可。
InstanceId和FirebaseInstanceId在“幕后”调用相同的服务,只有在使用FCM时才使用FirebaseInstanceId对象。尚未尝试同时使用两者,但是调用getId应该为相同的实例返回相同的值(除非库中有不同之处)。
还可以参见这篇可能有用的post

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接