ionic cordova plugin 安装和使用

注意事项

  1. ionic1须要ng-cordova
  2. plugin的使用都须要放到deviceready事件的回调中, 设备准备好了才能设备交互
  3. plugin只有在真机上才有效果, 模拟器(部分)和browser中是无效的

插件安装

官网Doc - http://cordova.apache.org/docs/en/latest/guide/cli/index.html#add-pluginscss

ionic cordova plugin add cordova-plugin-camera

插件的引入

ionic依赖ng-cordova
直接使用CDN引入也能够: http://www.bootcdn.cn/ng-cordova/
引入位置是cordova以前, angularjs以后html

<!-- ionic/angularjs js -->
  <script src="lib/ionic/js/ionic.bundle.js"></script>
  <script src="https://cdn.bootcss.com/ng-cordova/0.1.27-alpha/ng-cordova.js"></script>
  <script src="cordova.js"></script>

插件的使用

模块中加入ngCordova依赖, 插件都须要设备ready以后才能正常工做, 在deviceready事件回调中使用, 若是浏览器调试的话还须要处理对象不存在的异常.angularjs

angular.module('myApp', ['ngCordova'])

      .controller('LoginCtrl', ['$ionicPlatform', '$cordovaDevice', '$scope',

          function($ionicPlatform, $cordovaDevice, $scope) {

              $ionicPlatform.ready(function() {
                  // cordova plugin only work on real Device, not Broswer
                  if (window.device) {
                      // $scope.data.device = $cordovaDevice.getDevice();
                      // $scope.data.cordova = $cordovaDevice.getCordova();
                      $scope.data.devicetype = $cordovaDevice.getModel();
                      $scope.data.devicename = $cordovaDevice.getUUID();
                      $scope.data.platform = $cordovaDevice.getPlatform();
                      $scope.data.version = $cordovaDevice.getVersion();
                  }
              });
          }
      ]);