微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-在Android中使用PhoneGap下载文件后,无法在图库中找到文件

我在Android版PhoneGap-App中下载的文件有问题.
我认为download-Function from PhoneGap实际上效果很好.它从URL获取文件,然后
将其存储在SD卡上. (代码如下)

那么问题出在哪里呢?当我将JPG或PNG下载到
下载文件夹,我希望可以通过本地gallery访问它.
但是图片没有出现在画廊中.要看到它,我必须
重新启动手机,否则我必须使用Astro等其他应用.

是否有“ Refresh_the_native_gallerie”功能或类似功能

非常感谢你.

try {
     var filePath = 'file:///mnt/sdcard/Download/google.png'; // Correct filePath
     var url = "https://www.google.de/images/srpr/logo3w.png"; //Correct URL

     var fileTransfer = new FileTransfer();

     fileTransfer.download(url, filePath, function(entry) {
         console.log("s3_download download complete: " + entry.
         // Do i need a "Refresh_all_other_Apps"-function here?
     }, function(error) {
     // normally no Error
         console.log("s3_download download error source " + error.source);
         console.log("s3_download download error target " + error.target);
         console.log("s3_download download error code" + error.code);
     });
} catch (e) {
     console.log("downloadTest ERROR: " + e);
}

无法快速回答我自己的问题,只能编辑我的问题.所以这是答案:

我写了一点PhoneGap-Plugin,实际上只不过是从zapl调用代码而已.再次感谢.希望它可以帮助遇到同样问题的人.

您可以在这里找到代码https://github.com/philipp-at-greenqloud/pluginRefreshMedia

解决方法:

我不知道这在PhoneGap / JavaScript上下文中是否对您有帮助:

您的问题是图库将仅显示在设备媒体数据库中建立索引的文件.仅将文件添加文件系统不会自动将其添加到该数据库.几乎只有一次重新扫描/更新该数据库的情况是,当您重新启动设备或重新安装sdcard(与PC共享后,或者如果您弹出它并将其放回去).

要将文件添加数据库,最简单的方法是将Intent#ACTION_MEDIA_SCANNER_SCAN_FILE发送到MediaScanner,以使其将文件添加数据库.完成后,文件显示在图库中.

Java代码将是

File newImage = new File("/mnt/sdcard/Download/google.png");
Intent scanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
scanIntent.setData(Uri.fromFile(newImage));
sendbroadcast(scanIntent);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐