您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關HTML5如何獲取設備信息的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
Device模塊管理設備信息,用于獲取手機設備的相關信息,如IMEI、IMSI、型號、廠商等。通過plus.device獲取設備信息管理對象。
1.1、imei: 設備的國際移動設備身份碼,調用此屬性獲取設備的國際移動設備身份碼。 如果設備不支持則返回空字符串。
平臺支持:Android - 2.2+ (支持),iOS - 4.5+ (不支持): iOS設備不支持獲取imei值,返回空字符串。
示例:
[html] view plain copy
<!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卡信息,返回空數組。
示例:
[html] view plain copy
<!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: 設備的型號,調用此屬性獲取設備的型號信息。 如果設備不支持則返回空字符串。
示例:
[html] view plain copy
<!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+ (支持)
示例:
[html] view plain copy
<!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+ (支持): 根據包名隨機生成的設備標識號。注意:在設備重置后會重新生成。
示例:
[html] view plain copy
<!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.1、dial: 撥打電話
void plus.device.dial( number, confirm );
說明:調用系統程序撥打電話。
參數:
number: ( String ) 必選 要撥打的電話號碼
confirm: ( Boolean ) 可選 是否需要用戶確認后開始撥打電話,設置為true表示打開系統撥打電話界面,需用戶點擊撥號按鈕后才開始撥打電話,false則無需確認直接撥打電話,默認值為true。
返回值:void : 無
平臺支持:Android - 2.2+ (支持)、iOS - 5.1+ (支持): 忽略confirm參數,調用直接撥打電話。
示例:
[html] view plain copy
<!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參數,播放系統的通知鈴聲
示例:
[html] view plain copy
<!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設備不支持,調用此接口無任何效果。 注意:如果在系統設置中關閉振動功能則無法調用設備振動(設置->聲音->振動)。
示例:
[html] view plain copy
<!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 : 無
示例:
[html] view plain copy
<!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+ (支持): 設置音量后對所有項的音量生效,如通話音量、系統音量、鈴聲音量、音樂音量、提示聲音音量。
示例:
[html] view plain copy
<!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.1、screen: Screen模塊管理設備屏幕信息
3.1.1、屬性
1)、resolutionHeight: 設備屏幕高度分辨率
plus.screen.resolutionHeight;
說明:Number 類型 只讀屬性,設備屏幕區域包括系統狀態欄顯示區域和應用顯示區域,screen獲取的是設備屏幕總區域的邏輯分辨率,單位為px。 如果需要獲取實際分辨率則需要乘以比例值scale。
示例:
[html] view plain copy
<!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。
示例:
[html] view plain copy
<!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+ (支持)
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "Screen resolution: " + plus.screen.resolutionWidth*plus.screen.scale + " x " + plus.screen.resolutionHeight*plus.screen.scale ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 邏輯分辨率與實際分辨率的比例<br/> </body> </html>
4)、dpiX: 設備屏幕水平方向的密度
plus.screen.dpiX;
說明:Number 類型 只讀屬性,設備屏幕的密度為每英寸所顯示的像素點數,密度越高顯示清晰度越高,單位為dpi。
平臺支持:Android - 2.2+ (支持)。iOS - 4.3+ (支持)
示例:
[html] view plain copy
<!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+ (支持)
示例:
[html] view plain copy
<!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 : 無
示例:
[html] view plain copy
<!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>
2)、getBrightness: 獲取屏幕亮度值
Number plus.screen.getBrightness();
說明:屏幕亮度值范圍為0到1,0表示最低亮度值,1表示最高亮度值。
返回值:Number : 返回程序的屏幕亮度值
3)、lockOrientation: 鎖定屏幕方向
void plus.screen.lockOrientation( String orientation );
說明:鎖定屏幕方向后屏幕只能按鎖定的屏幕方向顯示,關閉當前頁面后仍然有效。 可再次調用此方法修改屏幕鎖定方向或調用unlockOrientation()方法恢復到應用的默認值。
參數:
orientation: ( String ) 必選 要鎖定的屏幕方向值,鎖定屏幕方向可取以下值: "portrait-primary": 豎屏正方向; "portrait-secondary": 豎屏反方向,屏幕正方向按順時針旋轉180°; "landscape-primary": 橫屏正方向,屏幕正方向按順時針旋轉90°; "landscape-secondary": 橫屏方向,屏幕正方向按順時針旋轉270°; "portrait": 豎屏正方向或反方向,根據設備重力感應器自動調整; "landscape": 橫屏正方向或反方向,根據設備重力感應器自動調整;
返回值:void : 無
4)、unlockOrientation: 解除鎖定屏幕方向
void plus.screen.unlockOrientation();
說明:解除鎖定屏幕方向后將恢復應用默認的屏幕顯示方向(通常為應用打包發布時設置的方向)。
返回值:void : 無
3.2、display: Display模塊管理應用可使用的顯示區域信息
屬性:
(1)、resolutionHeight: 應用可使用的屏幕高度邏輯分辨率
plus.display.resolutionHeight;
說明:Number 類型 只讀屬性,設備屏幕區域包括系統狀態欄顯示區域和應用顯示區域,display獲取的是應用顯示區域的邏輯分辨率,單位為px。 如果需要獲取實際分辨率則需要乘以比例值scale。
平臺支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "Display height: " + plus.display.resolutionHeight*plus.screen.scale + "px" ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 應用可使用的屏幕高度邏輯分辨率<br/> </body> </html>
(2)、resolutionWidth: 應用可使用的屏幕寬度邏輯分辨率
plus.display.resolutionWidth;
說明:Number 類型 只讀屬性,設備屏幕區域包括系統狀態欄顯示區域和應用顯示區域,display獲取的是應用顯示區域的邏輯分辨率,單位為px。 如果需要獲取實際分辨率則需要乘以比例值scale。
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "Display width: " + plus.display.resolutionWidth*plus.screen.scale + "px" ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 應用可使用的屏幕寬度邏輯分辨率<br/> </body> </html>
3.3、networkinfo: Device模塊用于獲取網絡信息
3.3.1、常量
(1)、CONNECTION_UNKNOW: 網絡連接狀態未知
(2)、CONNECTION_NONE: 未連接網絡
(3)、CONNECTION_ETHERNET: 有線網絡
(4)、CONNECTION_WIFI: 無線WIFI網絡
(5)、CONNECTION_CELL2G: 蜂窩移動2G網絡
(6)、CONNECTION_CELL3G: 蜂窩移動3G網絡
(7)、CONNECTION_CELL4G: 蜂窩移動4G網絡
3.3.2、方法
getCurrentType: 獲取設備當前連接的網絡類型
Number plus.networkinfo.getCurrentType();
說明:獲取當前設備連接的網絡類型,返回值為網絡類型常量,可取值CONNECTION_*常量。
返回值:Number : 設備當前網絡類型
平臺支持:Android - 2.3+ (支持),iOS - 4.3+ (支持): 無法區分蜂窩移動網絡類型,在蜂窩移動網絡環境下均返回CONNECTION_CELL2G。
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ var types = {}; types[plus.networkinfo.CONNECTION_UNKNOW] = "Unknown connection"; types[plus.networkinfo.CONNECTION_NONE] = "None connection"; types[plus.networkinfo.CONNECTION_ETHERNET] = "Ethernet connection"; types[plus.networkinfo.CONNECTION_WIFI] = "WiFi connection"; types[plus.networkinfo.CONNECTION_CELL2G] = "Cellular 2G connection"; types[plus.networkinfo.CONNECTION_CELL3G] = "Cellular 3G connection"; types[plus.networkinfo.CONNECTION_CELL4G] = "Cellular 4G connection"; alert( "Network: " + types[plus.networkinfo.getCurrentType()] ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 獲取設備當前連接的網絡類型<br/> </body> </html>
3.4、os: OS模塊管理操作系統信息
屬性:
(1)、language: 系統語言信息
plus.os.language;
說明:String 類型 只讀屬性,獲取當前操作系統設置的系統語言,字符串類型數據。
平臺支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "OS language: " + plus.os.language ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 獲取系統語言信息<br/> </body> </html>
(2)、version: 系統版本信息
plus.os.version;
說明:String 類型 只讀屬性,獲取當前操作系統的版本信息,字符串類型數據。平臺支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "OS version: " + plus.os.version ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 獲取系統版本信息<br/> </body> </html>
(3)、name: 系統的名稱
plus.os.name;
說明:String 類型 只讀屬性,獲取當前操作系統的名稱,字符串類型數據。
平臺支持:Android - 2.2+ (支持): 返回字符串“Android”,iOS - 4.3+ (支持): 返回字符串“iOS”
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "OS name: " + plus.os.name ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 獲取系統的名稱<br/> </body> </html>
(4)、vendor: 系統的供應商信息
plus.os.vendor;
說明:String 類型 只讀屬性,獲取當前操作系統的供應商名稱,字符串類型數據。
平臺支持:Android - 2.2+ (支持): 返回字符串“Google”,iOS - 4.3+ (支持): 返回字符串“Apple”
示例:
[html] view plain copy
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Device Example</title> <script type="text/javascript"> // H5 plus事件處理 function plusReady(){ alert( "OS name: " + plus.os.vendor ); } if(window.plus){ plusReady(); }else{ document.addEventListener("plusready",plusReady,false); } </script> </head> <body> 獲取系統的供應商信息<br/> </body> </html>
感謝各位的閱讀!關于HTML5如何獲取設備信息就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。