2015-06-18 17 views

risposta

4

ci sono tre opzioni, e da quello che ho capito che sono diverse per ogni piattaforma:

Camera.DestinationType.FILE_URI 
    'file://' ios 
    'content://' android 

Camera.DestinationType.NATIVE_URI 
    'assets-library://' ios 
    'content://' android 

Camera.DestinationType.DATA_URL 
    'data:image/jpg;base64,' 

Se desiderate convertirli in altri URL è possibile utilizzare il plugin di file: https://github.com/apache/cordova-plugin-file

navigator.camera.getPicture(function (path) { 
    window.alert('getPicture.success: ' + JSON.stringify(path)); 
    window.resolveLocalFileSystemURI(path, function (fileEntry) { 
     window.alert("success: " + JSON.stringify(fileEntry)); 
    }, function (e) { 
     window.alert("error: " + JSON.stringify(e)); 
    }); 
}, function (e) { 
    window.alert('getPicture.error: ' + JSON.stringify(e)); 
}, $scope.options); 

Ecco la documentazione per le opzioni: https://github.com/apache/cordova-plugin-camera/blob/master/www/CameraConstants.js

E anche il link al codice sorgente per questo funzione: https://github.com/apache/cordova-plugin-file/blob/master/www/resolveLocalFileSystemURI.js

+0

Qualsiasi idea di come scegliere tra la galleria e la fotocamera nella telecamera cordova – gates

+0

Sì! Nell'oggetto opzioni puoi passare attraverso: {sourceType: Camera.PictureSourceType.CAMERA} o {sourceType: Camera.PictureSourceType. PHOTOLIBRARY} –

+0

Sono sicuro che non intendi dire sourceType: Camera.PictureSourceType.CAMERA || Camera.PictureSourceType.PHOTOLIBRARY: D, Se sai cosa intendo! Voglio dire che dovrebbe dare un pop-up chiedendo di selezionarne uno, ora dobbiamo creare quel pop-up da soli e scrivere il codice duplicato .. Argh! – gates