Image 流星科尔多瓦图像共享应用程序

Image 流星科尔多瓦图像共享应用程序,image,cordova,meteor,camera,gallery,Image,Cordova,Meteor,Camera,Gallery,我正在构建一个METEOR应用程序,用户可以使用相机和画廊点击/上传图像。其他用户应该能够看到图像并下载它 我已经安装了以下插件: 科尔多瓦插件-camera@2.4.1, 科尔多瓦插件-file@4.3.3 这是我的密码: var cameraOptions = { quality: 100, previewDrag: false, sourceType: sourcetype, correctOrientation: true, allowEdit:

我正在构建一个METEOR应用程序,用户可以使用相机和画廊点击/上传图像。其他用户应该能够看到图像并下载它

我已经安装了以下插件:

科尔多瓦插件-camera@2.4.1,

科尔多瓦插件-file@4.3.3

这是我的密码:

var cameraOptions = {
    quality: 100,
    previewDrag: false,
    sourceType: sourcetype,
    correctOrientation: true,
    allowEdit: true,
    saveToPhotoAlbum : true,
    mediaType : Camera.MediaType.PICTURE,
    destinationType : Camera.DestinationType.FILE_URI,
    encodingType: Camera.EncodingType.JPEG,
    popoverOptions: CameraPopoverOptions
};
navigator.camera.getPicture(function cameraSuccess(fileURI){
    resolveLocalFileSystemURL(dataURL, function(entry) {
        Session.set('imgData', entry.toInternalURL());          
    });
}, function cameraError(error){
    Session.set('imgData', false);
}, cameraOptions);`
Session.get('imgData')作为img src传递(但图像不呈现)

但我不知道该怎么做。有什么见解吗


PS:未来的任务包括加载视频、pdf、文档和其他文件。因此,如果您能给出一个同样有用的答案,我们将不胜感激。

以下是获取图像的代码。 这部分是为了获得图像

function onCopySuccess(entry) {
    $scope.$apply(function () {
        $scope.image = entry.nativeURL;
    });
}
下面是关于拍照和获取图像的完整代码。 您应该安装cordova插件文件插件

// 2
    var options = {
        destinationType : Camera.DestinationType.FILE_URI,
        sourceType : Camera.PictureSourceType.CAMERA, // Camera.PictureSourceType.PHOTOLIBRARY
        allowEdit : false,
        encodingType: Camera.EncodingType.JPEG,
        popoverOptions: CameraPopoverOptions,
    };

    // 3
    $cordovaCamera.getPicture(options).then(function(imageData) {

        // 4
        onImageSuccess(imageData);

        function onImageSuccess(fileURI) {
            createFileEntry(fileURI);
        }

        function createFileEntry(fileURI) {
            window.resolveLocalFileSystemURL(fileURI, copyFile, fail);
        }

        // 5
        function copyFile(fileEntry) {
            var name = fileEntry.fullPath.substr(fileEntry.fullPath.lastIndexOf('/') + 1);
            var newName = makeid() + name;

            window.resolveLocalFileSystemURL(cordova.file.dataDirectory, function(fileSystem2) {
                fileEntry.copyTo(
                    fileSystem2,
                    newName,
                    onCopySuccess,
                    fail
                );
            },
            fail);
        }

        // 6
        function onCopySuccess(entry) {
            $scope.$apply(function () {
                $scope.image = entry.nativeURL;
            });
        }

        function fail(error) {
            console.log("fail: " + error.code);
        }     
    }, function(err) {
        console.log(err);
    });
函数copyFIle(fileEntry)中的makeid()指的是什么?