【问题标题】:How to get a device identifier using Phonegap如何使用 Phonegap 获取设备标识符
【发布时间】:2013-12-03 19:13:18
【问题描述】:

我需要获取任何数字、序列号、密钥或其他任何东西来识别运行我的 phonegap 应用程序的每台设备,我认为 uuid 在应用程序更新时也会发生变化,因此它对我不起作用.

这里的场景是用户可以从应用程序同步数据,所以我需要知道哪个设备已经同步,哪个没有同步,或者它是否需要更新可能其他设备已经完成的新数据等

有什么想法吗?

【问题讨论】:

  • 我想我已经找到了一种方法来让它做你想做的事情,但它至少可以在 iOS 上安装多个应用程序。就本次讨论而言,哪些平台最重要?
  • @r3wt 你已经检查过这个cordova插件了吗? github.com/Paldom/UniqueDeviceID
  • @r3wt 您需要针对哪种平台(Android、iOS、...)的解决方案吗?
  • @beaver 您的回答可以解决我的问题。谢谢老兄。
  • @r3wt 我添加了答案,如果您相信并且满足您的要求,请投票

标签: cordova key device identifier


【解决方案1】:
<script type="text/javascript" charset="utf-8">

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
    var element = document.getElementById('deviceProperties');
    element.innerHTML = 'Device Model: '    + device.model    + '<br />' +
                        'Device Cordova: '  + device.cordova  + '<br />' +
                        'Device Platform: ' + device.platform + '<br />' +
                        'Device UUID: '     + device.uuid     + '<br />' +
                        'Device Version: '  + device.version  + '<br />';
}

</script>

获取设备信息后,您可以将逻辑应用于验证。

参考:http://docs.phonegap.com/en/3.2.0/cordova_device_device.md.html#Device

【讨论】:

  • 正如我在帖子中所说,当应用更新时 uuid 会发生变化,并且其他信息可以轻松重复,因此无法满足我的需要
  • device object 是从哪里来的?
  • 你指的是哪一个?
  • 我添加了 phonegap 插件?
【解决方案2】:

我建议使用这个 PhoneGap/Cordova 插件:

https://github.com/Paldom/UniqueDeviceID

如文档中所述

应用卸载后保持不变。

【讨论】:

  • 在 iOS 上,该插件仅生成一个唯一的 UUID 并将其存储在用户的钥匙串中。如果该条目被删除,下一个将不同。
【解决方案3】:

当用户首次安装应用程序时,您可以调用 API 从您用于同步数据的系统中获取唯一 ID,然后您可以将该 ID 存储在 localStorage 变量或数据库表中。然后您在拨打电话时参考存储在设备上的那个 ID。

【讨论】:

  • 是的,我想到了,但如果用户卸载应用程序怎么办?真是让人头疼,我首先考虑使用imei号码,但在平板电脑上不起作用
  • 是的,在这种情况下可能需要考虑注册。然后,您还可以涵盖用户获得新设备的情况,或者如果他们需要为同一设备的设备进行 RMA。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-01
  • 1970-01-01
  • 2013-09-19
  • 2016-02-28
相关资源
最近更新 更多