2016-01-12 1 views
1

J'ai créé une usine pour obtenir l'image de la galerie sur iOS. Maintenant, je teste cette usine sur l'émulateur (simulateur) d'iOS et il y a une exception. Comment je n'ai aucun appareil iOS à tester Je veux savoir si cette usine ne fonctionne qu'avec un appareil ou s'il y a un problème avec cette usine. Sur Android, cette usine fonctionne très bien.Obtenez l'image de la galerie iOS?

usine

var app = angular.module('starter'); 

app.factory('CameraFactory', ['$q', function($q) { 

    var options = { 
     quality: 50, 
     destinationType: Camera.DestinationType.FILE_URI, 
     sourceType: 0,  // 0:Photo Library, 1=Camera, 2=Saved Photo Album   
    } 

    return { 
     getPicture: function(callback){ 
      var onSuccess = function(imageData) { 
       window.resolveLocalFileSystemURL(imageData, function(fileEntry) { 
        if (callback) callback({ 
           success:true, 
           path: fileEntry.nativeURL, 
           imageData: imageData 
          }); 
       }); 

      }; 

      var onFail = function(e) { 
       console.log("onFail! " + e); 
       if (callback) callback({success:false}); 
      }; 
      navigator.camera.getPicture(onSuccess, onFail, options); 
     } 
    } 
}]); 

Exception

1  706110 error Error: Can't find variable: Camera 
http://192.225.162.87:8100/js/factories/CameraFactory.js:7:32 

Ligne 7 a: Camera.DestinationType.FILE_URI

+0

Avez-vous installé le plug-in? Vous devriez essayer ngCordova pour combiner cordova avec angularJs –

+0

@SmileApplications oui, j'ai. Comment je l'ai déjà dit sur Android fonctionne bien. – FernandoPaiva

+0

Peut-être que vous l'avez sur Android et non sur iOS .. Essayez Cordova plugin liste ios et vérifiez si elle est là –

Répondre

1

Comme @FernandoPaiva indiqué dans les commentaires, l'émulateur ne prend pas en charge l'API vous essayer d'accéder car il n'a pas réellement un appareil photo. Vous pouvez voir ceci noté dans la documentation que j'ai liée ci-dessous.

NOTE: The camera API only works on a real device, and not in the emulator.

http://ngcordova.com/docs/plugins/camera/