android-科尔多瓦相机-离子

我一直在寻找解决方案将近2天.
我正在尝试使用ngCordova相机插件.

我在AngularJS中使用ionic-yeoman框架.

我所做的是:

bower install --save ngCordova.

已将ngCordova添加到我的app.module中.
安装了cordova相机插件:

cordova plugin add org.apache.cordova.camera.

我的控制器:

.controller('profileCtrl', function($scope, myService, $cordovaCamera)
{
  $scope.takePicture = function() {
    var options = { 
        quality : 75, 
        destinationType : Camera.DestinationType.DATA_URL, 
        sourceType : Camera.PictureSourceType.CAMERA, 
        allowEdit : true,
        encodingType: Camera.EncodingType.JPEG,
        targetWidth: 100,
        targetHeight: 100,
        popoverOptions: CameraPopoverOptions,
        saveToPhotoAlbum: false
    };

    $cordovaCamera.getPicture(options).then(function(imageData) {
      // Success! Image data is here
    }, function(err) {
      // An error occured. Show a message to the user
    });
  }

  myService.getFoo().then(function(data) {
   //this will execute when the 
   //AJAX call completes.
   $scope.items = data;
  });
})

我收到此错误:ReferenceError:未定义相机

解决方法:

如果您通过浏览器提供应用程序,那么无论您对cordova的使用情况如何,都无法使用.但是,即使在模拟器或设备本身中服务您的应用程序后仍然遇到问题.请尝试以下步骤.

首先,检查cordova插件列表:

转到项目目录类型:cordova插件列表

>请参阅cordova-plugin-media-capture,cordova-plugin-camera(如果这些不在列表中,则说明您只是缺少插件).
运行命令
cordova插件添加cordova-plugin-media-capture,cordova插件添加cordova-plugin-camera
>如果插件在那里并且您仍然遇到相机问题未定义

> Cordova插件rm cordova-plugin-camera
> Cordova插件rm cordova-plugin-media-capture
>离子平台rm android
>离子平台添加Android
> Cordova插件添加cordova-plugin-camera
> Cordova插件添加cordova-plugin-media-capture

index.html中必须存在以下内容

 <script src="lib/ngCordova/dist/ng-cordova.js"></script>
    <script src="cordova.js"></script>
上一篇:调用Yeoman子生成器不会提示


下一篇:mysql – 使用较旧的generator-angular-fullstack版本