【问题标题】:Finding the UUID of the device - UniqueDeviceID plugin查找设备的 UUID - UniqueDeviceID 插件
【发布时间】:2015-03-25 11:27:12
【问题描述】:

尝试检索 Device 的唯一设备 ID。 使用插件 - UniqueDeviceID

当tring运行以下代码时

var exec = require('cordova/exec');
module.exports = {

get: function(success, fail) {
    cordova.exec(success, fail, 'UniqueDeviceID', 'get', []);
}

}; `

我收到以下错误- “未捕获的 ReferenceError:未定义模块”

这确实是在cordova.js 中定义的 我该如何解决这个问题。 提前致谢

【问题讨论】:

  • 为什么不使用cordova自己的插件来达到这个目的呢?用法:device.uuid docs.phonegap.com/en/edge/cordova_device_device.md.html
  • 对于我在项目中使用的 3 以上版本没有贬值。所使用的插件只是一个替代品
  • 据我所知,唯一不推荐使用的是“device.name”,它在 2.3.0 版中已被弃用。您可以改用 device.model 。但是关于 uuid,我没有看到任何通知表明它也已被弃用。另外,我也在我的项目中使用它(版本> 3)。您能否分享声称已弃用的来源?

标签: javascript html cordova phonegap-plugins uuid


【解决方案1】:

get方法需要在应用初始化的device.ready()中调用。 将它放在其他地方会导致上述错误,对我来说效果很好。

【讨论】:

    【解决方案2】:

    有一个内置函数,用于获取 uuid:

    var string = device.uuid;
    

    完整示例:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Device Properties Example</title>
    
        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
        <script type="text/javascript" charset="utf-8">
    
        // Wait for device API libraries to load
        //
        document.addEventListener("deviceready", onDeviceReady, false);
    
        // device APIs are available
        //
        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>
      </head>
      <body>
        <p id="deviceProperties">Loading device properties...</p>
      </body>
    </html>
    

    请访问此链接:

    http://docs.phonegap.com/en/3.1.0/cordova_device_device.md.html#device.uuid

    看看,如果这有帮助。

    【讨论】:

      【解决方案3】:

      我使用了来自此链接的 UniqueDeviceID 插件:https://www.npmjs.com/package/cordova-plugin-uniquedeviceid

      非常简单而强大。尝试卸载并重新安装应用程序并仍然返回相同的 UUID。 为了使这个插件对我有用,我必须进行两项更改: 1. 上面的链接提到要在 config.xml 文件中添加一个单独的行。我也遵循了同样的方法,但无法构建我的应用程序。我删除了这条线,它工作正常。 2. 就像显示的成功案例一样,还要为失败案例添加一个循环,否则会出现运行时错误。

      function fail(error) {
         console.log(error); };
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-30
        • 1970-01-01
        • 2021-04-17
        • 2019-09-15
        • 1970-01-01
        • 2015-02-03
        相关资源
        最近更新 更多