Плагин Cordova Camera выдает ошибку 'объект' не имеет метода 'getPicture'

Я работаю над приложением ionic v1 Camera после правильной настройки (как это делалось много раз раньше). после сборки приложения и отладки я получил эту ошибку. у объекта нет метода

Плагин установлен правильно, ng-cordova.min включен. $CordovaCamera вводится. Вот мой код:

$scope.takePhoto = function () {
              var options = {
                quality: 100,
                destinationType: Camera.DestinationType.DATA_URL,
                sourceType: Camera.PictureSourceType.CAMERA,
                allowEdit: true,
                encodingType: Camera.EncodingType.JPEG,
                targetWidth: 300,
                targetHeight: 300,
                popoverOptions: CameraPopoverOptions,
                saveToPhotoAlbum: true
            };

                $cordovaCamera.getPicture(options).then(function (imageData) {
                    $rootScope.imgURI = "data:image/jpeg;base64," + imageData;
                    $state.go('menu.signUp');
                }, function (err) {
                    // An error occured. Show a message to the user
                });
            }

функции работают нормально. но камера не открывается и выдает ошибку, как показано на рисунке.

3 ответа

Решение

Попробуйте ввести $cordovaCamera в контроллер контактов и использовать его следующим образом.

camera.getPicture() // просто камера вместо $cordovaCamera

Убедитесь, что введена зависимость от $cordovaCamera, и используйте ее следующим образом.

$cordovaCamera.getPicture(options).then(function(imageData) {
  var image = document.getElementById('myImage');
  image.src = "data:image/jpeg;base64," + imageData;
}, function(err) {
  // error
});

Используйте camera.getPicture() или navigator.camera.getPicture()

https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-camera/

Другие вопросы по тегам