【问题标题】:How to download picture with Phonegap Filetransfer to image gallery in iOS如何使用 Phonegap Filetransfer 将图片下载到 iOS 中的图片库
【发布时间】:2014-10-30 14:26:47
【问题描述】:

这个问题已经被问过好几次了,但大多数问题都没有答案

我正在下载一个如下所示的文件,它似乎工作正常。但是..它没有出现在iOS,嗯,画廊中。也就是说,在“照片”应用程序中。

    var fileTransfer = new FileTransfer();
var encurl = encodeURI(url);
var filename = url.split('/').slice(-1)[0];
var filepath = "foo/"+filename;

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) {
    var syspath = fileSystem.root.toURL() + '/' + filepath;
    var fileTransfer = new FileTransfer();
    fileTransfer.download(
        encurl,
        syspath,

        function (entry) {
            foo.debug("Download success "+syspath);
        },
        function (error) {
            foo.error("Download failed with error "+error.code+' '+syspath);
        }
    );
}, function (evt) {
    foo.error("Filesystem failed with error "+evt.target.error.code);

});

结果是

[Log] Download success file:///var/mobile/Applications/68DE0AD9-FBD2-4D82-92C0-2B7634B218D5/Documents//foo/20141030-153810-editor.jpg (console-via-logger.js, line 173)

欢呼。现在,您如何在 ios 上仅用手指打开下载?

【问题讨论】:

  • 嘿,从那以后你有什么发现吗?
  • 是的,请参阅stackoverflow.com/questions/21577230/… - M165437 和我的 cmets 的答案。不要对 Canvas2Image 感到困惑(就像我一样)。我现在在 ios、android 和 windows 上都有这个产品。
  • 我不明白的是,图像实际上是在手机上,但没有出现在图库中。这是为什么 ?是编码问题吗?真的很诡异。
  • 要详细说明,我不能使用它,因为我对正确下载但未显示在图库中的照片和视频也有同样的问题。而且画布不能用于视频。
  • 是的,很有趣吧?下载的文件会弄乱您的设备,而且是不可见的。问题是,媒体扫描仪 必须运行。例如,Android 在重新启动时会这样做。据说有代码可以触发,但从未让它工作 - 请参阅stackoverflow.com/questions/22784791/…

标签: ios cordova gallery file-transfer


【解决方案1】:

我会将其标记为 Phonegap - Save image from url into device photo gallery 的副本

我对 M165437 和我的 cmets 的回答很满意。这回答了我的问题。

【讨论】:

  • 好吧,有趣 :-) 我问了一个问题,9 个月没有得到答案,决定将我自己的答案标记为重复,我不能,所以我添加了一个有用的指针并接受我自己,然后我对此表示反对:-D
【解决方案2】:

尝试使用https://www.npmjs.com/package/com-cordova-image-save-to-gallery插件下载。它将从给定的 URL 下载图片并将其保存到 IOS 照片库。

Cordova plugin add https://github.com/valwinjose007/cordova-image-save-to-gallery.git

使用方法:

declare var CordovaImageSaveToGallery: any;

CordovaImageSaveToGallery.downloadFromUrl('https://picsum.photos/200/300',(res)=>{
    //download success
},(err)=>{
    //error on download
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 2014-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多