官方文档:http://cordova.apache.org/docs/en/latest/reference/cordova-plugin-device/index.html
ng-cordova 文档:http://ngcordova.com/docs/plugins/device/
1、安装命令
cordova plugin add cordova-plugin-device
2、getDevice 获取到的信息
var device = {
available: false,
platform: '', //获取操作系统名称
version: '', //获取操作系统版本
uuid: '', //获取设备通用唯一标识uuid
cordova: '', //获取当前cordova的版本
model: '', //返回设备的模型或产品名称。例如:'MI MAX'
manufacturer: '', //获取设备制造商,例如:'Xiaomi'
isVirtual: '', //判断设备是否在虚拟机上运行
serial: '' //获取设备序列号,例如:'277a9a00'
};
3、封装的AngularJS工具类
/**
* 获取设备的信息
* @author hxh
* @date 2018.3.28
*/
angular.module('starter.Device', ['ngCordova'])
.factory('$DeviceUtil', function ($cordovaDevice) {
var device = {
available: false,
platform: '', //获取操作系统名称
version: '', //获取操作系统版本
uuid: '', //获取设备通用唯一标识uuid
cordova: '', //获取当前cordova的版本
model: '', //device.model返回设备的模型或产品名称
manufacturer: '', //获取设备制造商
isVirtual: '', //判断设备是否在虚拟机上运行
serial: '' //获取设备序列号
};
return {
/**
* 获取设备信息
* @returns {*|Object}
*/
getDevice: function () {
return $cordovaDevice.getDevice();
},
/**
* 获取设备信息
* @returns {string} 返回JSON串
*/
getDeviceToString: function () {
return JSON.stringify(this.getDevice());
},
/**
* 获取操作系统名称
* @returns {*} "Android" "BlackBerry 10" "browser" "iOS" "WinCE" "Tizen" "Mac OS X"
*/
getPlatform: function () {
return $cordovaDevice.getPlatform();
},
/**
* 获取操作系统版本
* @returns {*}
*/
getVersion: function () {
return $cordovaDevice.getVersion();
},
/**
* 获取设备通用唯一标识uuid
* @returns {string|null|*}
*/
getUUID: function () {
return $cordovaDevice.getUUID();
},
/**
* 获取当前cordova的版本
* @returns {string|*|null}
*/
getCordova: function () {
return $cordovaDevice.getCordova();
},
/**
* 获取设备的模型或产品名称
* @returns {string|null|*}
*/
getModel: function () {
return $cordovaDevice.getModel();
},
/**
* 获取设备制造商
* @returns {string|null|*}
*/
getManufacturer: function () {
return $cordovaDevice.getManufacturer();
},
/**
* 设备是否在虚拟机上运行
* @returns {string|null|*}
*/
getIsVirtual: function () {
return this.getDevice().isVirtual;
},
/**
* 获取设备序列号
* @returns {string|null|*}
*/
getSerial: function () {
return this.getDevice().serial;
}
}
});
4、在AngularJS控制器中调用
document.addEventListener('deviceready', function () {
console.log('device:' + JSON.stringify($DeviceUtil.getDevice()));
console.log('version:' + $DeviceUtil.getVersion());
}, false);