属性:
变量作用域:
由于device被分配到window对象,隐含说明其作用域为全局范围。
// 下面两句引用了相同的“device”对象
var phoneName = window.device.name;
var phoneName = device.name;
获得设备的型号名称。
var string = device.name;
说明:
device.name返回设备的型号或产品名称。这个值是由设备制造商设定,可能同一产品的不同版本之间有所不同。
支持的平台:
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0或更高版本)
- iPhone
简单的范例:
// Android: Nexus One 返回 "Passion" (Nexus One的代码名)
// Motorola Droid 返回"voles"
// BlackBerry: Bold 8900 返回 "8900"
// iPhone: 所有设备都返回由iTunes设置的名称,如 "Joe's iPhone"
var name = device.name;
完整的范例:
<!DOCTYPE html> <html> <head> <title>Device Properties Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完成 function onDeviceReady() { var element = document.getElementById('deviceProperties'); element.innerHTML = 'Device Name: ' + device.name + '<br />' + 'Device PhoneGap: ' + device.phonegap + '<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>
Android 的特异情况:
- 获得产品名称而非型号名称。
- 产品名称一般是在生产过程中设定的代码名称。
- 例如:Nexus One返回“Passion”,Motorola Droid返回“voles”。
iPhone 的特异情况:
- 获得设备的定制名字而非设备型号名称。
- 定制名称是由所有者在iTunes中定制的。
- 例如“Joe's iPhone”。
获取设备上正在运行的PhoneGap版本信息。
var string = device.phonegap;
说明:
device.phonegap返回设备上正在运行的PhoneGap的版本号。
支持的平台:
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0或更高版本)
- iPhone
简单的范例:
var name = device.phonegap;
完整的范例:
<!DOCTYPE html> <html> <head> <title>Device Properties Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { var element = document.getElementById('deviceProperties'); element.innerHTML = 'Device Name: ' + device.name + '' + 'Device PhoneGap: ' + device.phonegap + '' + 'Device Platform: ' + device.platform + '' + 'Device UUID: ' + device.uuid + '' + 'Device Version: ' + device.version + ''; } </script> </head> <body> <p id="deviceProperties">Loading device properties...</p> </body> </html>
获得设备使用的操作系统名称。
var string = device.platform;
支持的平台:
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0或更高版本)
- iPhone
简单的范例:
// 根据不同的设备,下面是一些例子:
// - "Android" // - "BlackBerry"
// - "iPhone"
// - "webOS"
var devicePlatform = device.platform;
完整的范例:
<!DOCTYPE html> <html> <head> <title>Device Properties Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { var element = document.getElementById('deviceProperties'); element.innerHTML = 'Device Name: ' + device.name + '<br />' + 'Device PhoneGap: ' + device.phonegap + '<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>
iPhone的特异情况:
- 所有设备均返回iPhone,但这是不准确的,因为Apple已经将iPhone的操作系统更名为iOS。
BlackBerry 的特异情况:
- 设备会返回设备的平台版本号而非平台名。例如Storm2 9550将返回“2.13.0.95” 或类似的信息。
获得设备的全球唯一标识符(UUID)。
var string = device.uuid;
说明:
- UUID是由设备生产商及特定设备平台或型号所决定的。
支持的平台:
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0或更高版本)
- iPhone
简单的范例:
// Android: 返回随机的64位整数(作为字符串)
// 这个整数在设备第一次启动时生成
// BlackBerry: 返回设备的PIN码
// 这是一个九位数的唯一证书(作为字符串)
// iPhone: (从UIDevice类文档中转述)
// 返回由多个硬件设备标示所生成的哈希值。
// 这是为了保证每一台设备是唯一的,因此不能和用户账号相关联。
var deviceID = device.uuid;
完整的范例:
<!DOCTYPE html> <html> <head> <title>Device Properties Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { var element = document.getElementById('deviceProperties'); element.innerHTML = 'Device Name: ' + device.name + '<br />' + 'Device PhoneGap: ' + device.phonegap + '<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>
- 获得操作系统的版本号。
var string = device.version;
支持的平台:
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0或更高版本)
- iPhone
简单的范例:
// Android: Froyo 返回 2.2 // Eclair 返回2.1,2.01或2.0 // 版本也有可能返回更新级别“2.1-update1” // BlackBerry: 使用OS 4.6的Bold 9000返回“4.6.0.282” // iPhone: iOS 3.2 返回 “3.2” var deviceVersion = device.version;
<!DOCTYPE html> <html> <head> <title>Device Properties Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { var element = document.getElementById('deviceProperties'); element.innerHTML = 'Device Name: ' + device.name + '<br />' + 'Device PhoneGap: ' + device.phonegap +'<br />' + 'Device Platform: ' + device.platform + '<br />' + 'Device UUID: ' + device.uuid + '<br />' + 'Device Version: ' + device.version +'<br />'; } </script> </head> <body οnlοad="onLoad()"> <p id="deviceProperties">Loading device properties...</p> </body> </html>