如何获得iphone和android的唯一标识符



我需要为我的cordova应用程序(iOS/Android(的每个设备获取一个唯一的编号。当用户关闭应用程序或安装新版本时,ID必须相同

我不能使用"cordova设备插件"中的UUID,因为当用户升级到新版本时,UUID会发生变化,所以它对我不起作用。

我试着生成一个唯一的号码并将其存储在手机上。然而,我遇到了一个信息没有持久化的问题。

当用户安装应用程序,然后从后台删除该应用程序时,就会发生这种情况。否则,数据保存为

有什么想法吗?

您可以使用手机的序列号作为唯一标识符

一种可能性是使用cordova插件云设置,它允许您在云存储中跨设备和安装持久化用户设置。

安装:

cordova plugin add cordova-plugin-cloud-settings

使用它来存储GUID:

var settings = {
GUID: 12345678
}
cordova.plugin.cloudsettings.save(settings);

这个解决方案的好处是它不需要任何特殊的用户权限。

如果你真的想要一个唯一的设备ID(相对于唯一的用户ID(,那么你可以使用UniqueDeviceID插件。

然而,请注意,在Android上,这使用SIM ID来获取标识符,因此需要READ_PHONE_STATE权限,该权限会显示用户权限提示"允许拨打和管理电话",这对用户的信任不太好。

使用MAC地址:

cordova plugin add cordova-plugin-ip-mac-address

var params = {};
addressimpl.request("getMACAddress", JSON.stringify(params), function(message) {
alert("mac address "+message);
}, function() {
alert("failed on get mac address");
});

从这里

最新更新