cordova-plugin-device 获取设备信息

官方文档: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);

你可能感兴趣的:(Cordova,Ionic)