【问题标题】:how to use camera plugin cordova 3.4 with platform android如何在平台android上使用相机插件cordova 3.4
【发布时间】:2014-05-07 03:00:29
【问题描述】:

我想使用相机插件cordova 3.4。我需要两个选项。首先它可以用相机拍照,其次我可以在图库中选择照片。

这是我只使用相机的代码

  function Photo(id, data, format) {
        this.id = id;
        this.data = data;
        this.format = format || "png";
        this.name = function() {
            var date = new Date();
            return "" + date.getTime() + "_" + this.id + "." + this.format;
        };
    }

    SiteCamera = {
        dataWithMimeType: function(data) {
            return 'data:image/png;base64,' + data;
        },
        takePhoto: function(idField, updated) {
            SiteCamera.id = idField;
            SiteCamera.updated = updated;

            navigator.camera.getPicture(SiteCamera.onSuccess, SiteCamera.onFail, {
                quality: 50,
                destinationType: Camera.DestinationType.DATA_URL,
                sourceType : Camera.PictureSourceType.CAMERA,
                encodingType: Camera.EncodingType.JPEG
            });
        },
        onSuccess: function(imageData) {
            var imageId = SiteCamera.updated ? "update_" + SiteCamera.id : SiteCamera.id;
            var image = document.getElementById(imageId);
            var photo = new Photo(SiteCamera.id, imageData);
            image.src = SiteCamera.dataWithMimeType(imageData);
            PhotoList.add(photo);
        },
        onFail: function() {
            alert("Failed");
        }
    };

谁能帮助我我想要可以让我使用相机选项或在图库中选择照片的功能。我向所有人展示的代码只是选择了。如果我使用第一个选项,我只能使用此选项,但我需要两者,但我不知道该怎么做。

【问题讨论】:

  • 哪个平台.. android or ios??

标签: android cordova cordova-plugins


【解决方案1】:
 var destinationType = navigator.camera.DestinationType;
 var source = navigator.camera.PictureSourceType.PHOTOLIBRARY;

 navigator.camera.getPicture(function (imageURI) { 


                                   /*Success callback*/


                             }, 
                             function (e) { 

                                   /*Fail callback*/

                             }, 
                             {
                              quality: 100,
                              destinationType: destinationType.FILE_URI,
                              sourceType: source
                              });

您可以从相机、照片库和相册中获取图像,只需更改来源类型即可。

 source = navigator.camera.PictureSourceType.PHOTOLIBRARY; //From PhotoLibrary
 source = navigator.camera.PictureSourceType.SAVEDPHOTOALBUM; //From Album
 source = navigator.camera.PictureSourceType.CAMERA; //From Camera(Default)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 2014-09-17
    • 1970-01-01
    相关资源
    最近更新 更多