使用Cordova和AngularJS的移动设备的唯一标识符

时间:2016-07-04 06:58:46

标签: android ios iphone angularjs cordova

请不要让我的帖子像重复一样,因为当我谷歌时它完全与这些帖子混淆了。 但是我需要你有价值的陈述和实时经验如何获得适用于iOS,Android和Windows Mobile的独特识别器 我有一个场景,当用户使用UserName和Password登录我同时向服务器发送详细信息时,我需要发送设备UUID。通过使用设备UUID和用户凭据,当第一个用户已登录时,将限制第二个用户登录(活动)。但是我对获得 iOS设备UUID 感到困惑,但是当我在应用程序访问任何UUID值时,我在很多帖子中看到iOS正在杀死App Store中的应用程序。

请建议我更好地完成mytask。

Link-1 Link-2

抱歉我的英语不好...... !!!

2 个答案:

答案 0 :(得分:0)

您可以使用Unique Device ID plugin

安装它:

cordova plugin add cordova-plugin-uniquedeviceid

并使用它:

window.plugins.uniqueDeviceID.get(function(uuid){
    console.log("Unique ID": +uuid);
}, function(error){
    console.error(error);
});

这将为每个设备提供一个在安装之间保持不变的唯一ID。

请注意,在Android 6上,它需要电话运行时权限才能访问SIM ID。此外,您可能需要对其进行分叉并对其进行更新,以使Windows Phone 8代码在Windows 10 Mobile上运行。

答案 1 :(得分:0)

在有角度的情况下 您必须通过npm安装ngx-device-detector,然后将其导入模块中,然后在导入部分中添加DeviceDetectorModule.forRoot()。然后在组件中使用import并在构造函数中添加private deviceService:DeviceDetectorService将生成ua方法并将其添加到构造函数this.epicFunction()(如果未粘贴此方法

epicFunction() {
    console.log('hello `Home` component');
    this.deviceId = this.deviceService.getDeviceInfo();
    const isMobile = this.deviceService.isMobile();
    const isTablet = this.deviceService.isTablet();
    const isDesktopDevice = this.deviceService.isDesktop();
    console.log(this.deviceId);
    console.log(isMobile);  // returns if the device is a mobile device (android / iPhone / windows-phone etc)
    console.log(isTablet);  // returns if the device us a tablet (iPad etc)
    console.log(isDesktopDevice); // returns if the app is running on a Desktop browser.
  }

注意:“ this.deviceId”是我在课程开始时创建的变量

在android的情况下,只需导入安全性并在清单文件中添加权限