0

有没有办法在PhoneGap(JavaScript)中获取iOS的设备模型/标识符,如“iPhone3,1”?

4

3 回答 3

1

在 Cordova (PhoneGap) 2.3.0 中,无需使用任何插件即可device.model

对于所有平台,都有一个名为 device.model 的新属性——它返回特定的设备型号,例如“iPad2,5”(对于其他平台,它返回用于返回的 device.name)。

资源

于 2013-04-23T17:19:04.003 回答
1

是的,通过Device API。您可以通过 window.device.* 访问它们。以下是属性列表:

device.name
device.cordova
device.platform
device.uuid
device.version

于 2012-11-10T03:23:03.150 回答
1

“从 3.0 版开始,Cordova 将设备级 API 实现为插件。”

您必须首先安装插件(从项目主目录):cordova plugin add org.apache.cordova.device

这是使用它的示例代码:

 <!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>

PhoneGap 文档

安装插件后,您可以通过以下方式读取设备型号:window.device.model

别忘了在deviceready事件之后调用它,别忘了加载cordova.js 仍然存在设备报告不准确的问题。我在各种 IOS 设备上对其进行了测试,得到以下结果:

iPhone 4 被报告为 iPhone3,1

iphone 5s被报告为 iPhone6,2

iPhone 6 Plus被报告为 iPhone 7,1

iPad 2报告为 iPad3,3

我现在进行调查以了解这些值的含义。如果有人有线索,我会很高兴听到。

于 2015-03-15T08:30:51.063 回答