Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI、IMSI、型号、厂商等。通过plus.device获取设备信息管理对象。
1、属性
1.1、imei: 设备的国际移动设备身份码,调用此属性获取设备的国际移动设备身份码。 如果设备不支持则返回空字符串。
平台支持:Android - 2.2+ (支持),iOS - 4.5+ (不支持): iOS设备不支持获取imei值,返回空字符串。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "IMEI: " + plus.device.imei );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取设备的国际移动设备身份码
</body>
</html>
1.2、imsi: 设备的国际移动用户识别码,字符串数组类型,获取设备上插入SIM的国际移动设备身份码。 如果设备支持多卡模式则返回所有SIM身份码。 如果设备不支持或没有插入SIM卡则返回空数组。
平台支持:Android - 2.2+ (支持): 如果设备没有插入SIM卡,则返回空数组。
iOS - 4.5+ (不支持): iOS设备不支持获取SIM卡信息,返回空数组。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "IMSI: " + plus.device.imsi );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取设备的国际移动用户识别码
</body>
</html>
1.3、model: 设备的型号,调用此属性获取设备的型号信息。 如果设备不支持则返回空字符串。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "Device: " + plus.device.model );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取设备的型号
</body>
</html>
1.4、vendor: 设备的生产厂商,调用此属性获取设备的生产厂商信息。 如果设备不支持则返回空字符串。
平台支持:Android - 2.2+ (支持)、iOS - 4.3+ (支持)
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "Vendor: " + plus.device.vendor );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取设备的生产厂商
</body>
</html>
1.5、uuid: 设备的唯一标识,调用此属性获取设备的唯一标识号。
平台支持:Android - 2.2+ (支持): 与设备的imei号一致。注意:如果无法获取设备imei则使用设备wifi的mac地址,如果无法获取设备mac地址则随机生成设备标识号,确保不同App在同一台设备上获取的值一致。iOS - 4.5+ (支持): 根据包名随机生成的设备标识号。注意:在设备重置后会重新生成。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "uuid: "+plus.device.uuid );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取设备的唯一标识号
</body>
</html>
2、方法
2.1、dial: 拨打电话
void plus.device.dial( number, confirm );
说明:调用系统程序拨打电话。
参数:
number: ( String ) 必选 要拨打的电话号码
confirm: ( Boolean ) 可选 是否需要用户确认后开始拨打电话,设置为true表示打开系统拨打电话界面,需用户点击拨号按钮后才开始拨打电话,false则无需确认直接拨打电话,默认值为true。
返回值:void : 无
平台支持:Android - 2.2+ (支持)、iOS - 5.1+ (支持): 忽略confirm参数,调用直接拨打电话。
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
function dialTest() {
plus.device.dial( "10086", false );
}
</script>
</head>
<body>
拨打电话<br/>
<button onclick="dialTest()">Dial</button>
</body>
</html>
2.2、beep: 发出蜂鸣声
void plus.device.beep( times );
说明:调用此方法使得设备发出蜂鸣声。
参数:
times: ( Number ) 可选 蜂鸣声重复的次数,默认发出一次蜂鸣声
返回值:void : 无
平台支持:Android - 2.2+ (支持): 播放系统设置中指定的默认通知铃声,iOS - 4.3+ (支持): 忽略times参数,播放系统的通知铃声
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
plus.device.beep( 3 );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
发出蜂鸣声<br/>
</body>
</html>
2.3、vibrate: 设备振动
plus.device.vibrate( milliseconds );
说明:调用此方法使得设备振动。
参数:
milliseconds: ( Number ) 必选 设备振动持续的时间,数值类型,单位为ms,默认为500ms。
返回值:void : 无
平台支持:Android - 2.2+ (支持): 振动指定的时长。iOS - 4.3+ (支持): 不支持milliseconds参数,使用系统默认振动时长,仅iPhone设备支持,iPad和iTouch设备不支持,调用此接口无任何效果。 注意:如果在系统设置中关闭振动功能则无法调用设备振动(设置->声音->振动)。
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
plus.device.vibrate( 2000 );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设备振动<br/>
</body>
</html>
2.4、setWakelock: 设置应用是否保持唤醒(屏幕常亮)状态
plus.device.setWakelock( lock );
说明:调用此方法设置应用是否一直保持唤醒状态,保持唤醒状态将会导致程序屏幕常亮、系统不会自动锁屏,从而导致消耗更多的电量。若未设置一直保持唤醒状态则会根据系统设置自动锁定屏幕。
参数:
lock: ( Boolean ) 必选 是否设置程序一直保持唤醒状态,可取值true或false,true表示设定程序一直保持唤醒状态,false表示关闭程序一直保持唤醒状态。程序退出后将恢复默认状态,默认为关闭程序保持唤醒状态。
返回值:void : 无
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 开启一直保持程序唤醒状态
plus.device.setWakelock( true );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置应用保持唤醒(屏幕常亮)状态<br/>
<button onclick="plus.device.setWakelock(false)">UnWakelock</button>
</body>
</html>
2.5、isWakelock: 获取程序是否一直保持唤醒(屏幕常亮)状态
Boolean plus.device.isWakelock();
说明:调用此方法获取程序是否一致保持唤醒状态。
返回值:Boolean : 返回ture表示程序已设置为一直保持唤醒状态,返回false表示程序未设置为一直保持唤醒状态。
2.6、setVolume: 设置设备的系统音量
plus.device.setVolume( volume );
说明:调用此方法调节设备的系统音量。
参数:
volume: ( Number ) 必选 设备的系统音量值,取值范围为0到1,0表示静音,1表示最大音量值。设置设备音量后对所有程序生效,退出程序系统仍然保持最后设定的音量值。
返回值:void : 无
平台支持:iOS - 4.3+ (支持)。Android - 2.2+ (支持): 设置音量后对所有项的音量生效,如通话音量、系统音量、铃声音量、音乐音量、提示声音音量。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置音量
plus.device.setVolume( 0.5 );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设备的系统音量值<br/>
</body>
</html>
2.7、getVolume: 获取设备的系统音量
Number plus.device.getVolume();
说明:系统音量值范围为0到1,0表示静音,1表示最大音量值。
返回值:Number : 系统的音量值
3、对象
3.1、screen: Screen模块管理设备屏幕信息
3.1.1、属性
1)、resolutionHeight: 设备屏幕高度分辨率
plus.screen.resolutionHeight;
说明:Number 类型 只读属性,设备屏幕区域包括系统状态栏显示区域和应用显示区域,screen获取的是设备屏幕总区域的逻辑分辨率,单位为px。 如果需要获取实际分辨率则需要乘以比例值scale。
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "Screen height: " + plus.screen.resolutionHeight*plus.screen.scale + "px" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设备屏幕高度分辨率<br/>
</body>
</html>
2)、resolutionWidth: 设备屏幕宽度分辨率
plus.screen.resolutionWidth;
说明:Number 类型 只读属性,设备屏幕区域包括系统状态栏显示区域和应用显示区域,screen获取的是设备屏幕总区域的分辨率,单位为px。 如果需要获取实际分辨率则需要乘以比例值scale。
示例:
Flash 动画Flash 动画
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "Screen width: " + plus.screen.resolutionWidtht*plus.screen.scale + "px" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设备屏幕宽度分辨率<br/>
</body>
</html>
3)、scale: 逻辑分辨率与实际分辨率的比例
plus.screen.scale;
说明:Number 类型 只读属性,屏幕分辨率分逻辑分辨率率和实际分辨率,在html页面中使用的像素值都是相对于逻辑分辨率,此值就是逻辑分辨率和实际分辨率的比例,实际分辨率=逻辑分辨率*比例。
平台支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
示例:
4)、dpiX: 设备屏幕水平方向的密度
plus.screen.dpiX;
说明:Number 类型 只读属性,设备屏幕的密度为每英寸所显示的像素点数,密度越高显示清晰度越高,单位为dpi。
平台支持:Android - 2.2+ (支持)。iOS - 4.3+ (支持)
示例:
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Device Example</title>
- <script type="text/javascript">
- // H5 plus事件处理
- function plusReady(){
- alert( "Screen dip in X: " + plus.screen.dpiX );
- }
- if(window.plus){
- plusReady();
- }else{
- document.addEventListener("plusready",plusReady,false);
- }
- </script>
- </head>
- <body>
- 设备屏幕水平方向的密度<br/>
- </body>
- </html>
5)、dpiY: 设备屏幕垂直方向的密度
plus.screen.dpiY;
说明:Number 类型 只读属性,设备屏幕的密度为每英寸所显示的像素点数,密度越高显示清晰度越高,单位为dpi。
平台支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
示例:
- !DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Device Example</title>
- <script type="text/javascript">
- // H5 plus事件处理
- function plusReady(){
- alert( "Screen dip in Y: " + plus.screen.dpiY );
- }
- if(window.plus){
- plusReady();
- }else{
- document.addEventListener("plusready",plusReady,false);
- }
- </script>
- </head>
- <body>
- 设备屏幕垂直方向的密度<br/>
- </body>
- </html>
3.1.2方法
1)、setBrightness: 设置屏幕亮度
plus.screen.setBrightness( brightness );
说明:调用此方法调节设备屏幕亮度。
参数:brightness: ( Number ) 必选 屏幕的亮度值,取值范围为0到1,0表示最低亮度值,1表示最高亮度值。设置屏幕亮度仅对当前程序在前台运行时有效,退出程序后屏幕亮度由系统设置的值决定。
返回值:void : 无
示例:
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Device Example</title>
- <script type="text/javascript">
- // H5 plus事件处理
- function plusReady(){
- // 设置屏幕亮度
- plus.screen.setBrightness( 0.5 );
- }
- if(window.plus){
- plusReady();
- }else{
- document.addEventListener("plusready",plusReady,false);
- }
- </script>
- </head>
- <body>
- 设置屏幕亮度<br/>
- </body>
- </html>