device-设备信息
Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI、IMSI、型号、厂商等。通过plus.device获取设备信息管理对象。
属性:
方法:
- dial: 拨打电话
- beep: 发出蜂鸣声
- vibrate: 设备振动
- setWakelock: 设置应用是否保持唤醒(屏幕常亮)状态
- isWakelock: 获取程序是否一直保持唤醒(屏幕常亮)状态
- setVolume: 设置设备的系统音量
- getVolume: 获取设备的系统音量
对象:
- screen: Screen模块管理设备屏幕信息
- display: Display模块管理应用可使用的显示区域信息
- networkinfo: Device模块用于获取网络信息
- os: OS模块管理操作系统信息
权限:
5+功能模块(permissions)
{
// ...
"permissions":{
// ...
"Device": {
"description": "设备信息"
}
}
}
screen
Screen模块管理设备屏幕信息
属性:
- resolutionHeight: 设备屏幕高度分辨率
- resolutionWidth: 设备屏幕宽度分辨率
- scale: 逻辑分辨率与实际分辨率的比例
- dpiX: 设备屏幕水平方向的密度
- dpiY: 设备屏幕垂直方向的密度
方法:
- setBrightness: 设置屏幕亮度
- getBrightness: 获取屏幕亮度值
- lockOrientation: 锁定屏幕方向
- unlockOrientation: 解除锁定屏幕方向
display
Display模块管理应用可使用的显示区域信息
属性:
- resolutionHeight: 应用可使用的屏幕高度逻辑分辨率
- resolutionWidth: 应用可使用的屏幕宽度逻辑分辨率
networkinfo
Device模块用于获取网络信息
常量:
- CONNECTION_UNKNOW: 网络连接状态未知
- CONNECTION_NONE: 未连接网络
- CONNECTION_ETHERNET: 有线网络
- CONNECTION_WIFI: 无线WIFI网络
- CONNECTION_CELL2G: 蜂窝移动2G网络
- CONNECTION_CELL3G: 蜂窝移动3G网络
- CONNECTION_CELL4G: 蜂窝移动4G网络
方法:
- getCurrentType: 获取设备当前连接的网络类型
os
OS模块管理操作系统信息
属性:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="HandheldFriendly" content="true" />
<meta name="MobileOptimized" content="320" />
<title>Hello H5+</title>
<script type="text/javascript">
function getDeviceInfo() {
var str = "",
i;
str += "设备型号:" + plus.device.model + "\n";
str += "设备厂商:" + plus.device.vendor + "\n";
str += "IMEI:" + plus.device.imei + "\n";
str += "UUID: " + plus.device.uuid + "\n";
str += "IMSI:";
for (i = 0; i < plus.device.imsi.length; i++) {
str += plus.device.imsi[i];
}
str += "\n";
str += "屏幕分辨率:" + plus.screen.resolutionWidth * plus.screen.scale + " x " + plus.screen.resolutionHeight * plus
.screen
.scale + "\n";
str += "DPI:" + plus.screen.dpiX + " x " + plus.screen.dpiY;
outSet(str);
}
function getSysInfo() {
var str = "";
str += "名称:" + plus.os.name + "\n";
str += "版本:" + plus.os.version + "\n";
str += "语言:" + plus.os.language + "\n";
str += "厂商:" + plus.os.vendor + "\n";
str += "网络类型:";
var types = {};
types[plus.networkinfo.CONNECTION_UNKNOW] = "未知";
types[plus.networkinfo.CONNECTION_NONE] = "未连接网络";
types[plus.networkinfo.CONNECTION_ETHERNET] = "有线网络";
types[plus.networkinfo.CONNECTION_WIFI] = "WiFi网络";
types[plus.networkinfo.CONNECTION_CELL2G] = "2G蜂窝网络";
types[plus.networkinfo.CONNECTION_CELL3G] = "3G蜂窝网络";
types[plus.networkinfo.CONNECTION_CELL4G] = "4G蜂窝网络";
str += types[plus.networkinfo.getCurrentType()];
outSet(str);
}
function deviceBeep() {
var str = "";
switch (plus.os.name) {
case "iOS":
if (plus.device.model.indexOf("iPhone") >= 0) {
plus.device.beep();
str += "设备蜂鸣中...";
} else {
str += "此设备不支持蜂鸣";
}
break;
default:
plus.device.beep();
str += "设备蜂鸣中...";
break;
}
outSet(str);
}
function deviceVibrate() {
var str = "";
switch (plus.os.name) {
case "iOS":
if (plus.device.model.indexOf("iPhone") >= 0) {
plus.device.vibrate();
str += "设备振动中...";
} else {
str += "此设备不支持振动";
}
break;
default:
plus.device.vibrate();
str += "设备振动中...";
break;
}
outSet(str);
}
function dial() {
plus.device.dial("10086", false);
}
</script>
</head>
<body>
<header id="header">
<div class="nvbt iback" onclick="back()"></div>
<div class="nvtt">Device</div>
<div class="nvbt idoc" onclick="openDoc('Device Document','/doc/device.html')"></div>
</header>
<div id="dcontent" class="dcontent">
<br />
<ul class="dlist">
<li class="ditem" onclick="getDeviceInfo()">获取设备信息</li>
<li class="ditem" onclick="getSysInfo()">获取系统信息</li>
<li class="ditem" onclick="deviceBeep()">蜂鸣</li>
<li class="ditem" onclick="deviceVibrate()">震动</li>
<li class="ditem" onclick="dial()">直接拨打电话</li>
</ul>
</div>
<div id="output">
Device可获取手机设备相关信息,包括硬件、软件、网络等信息。
</div>
</body>
</html>