问题标签 [android-mediascanner]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13190 浏览

android - Android ACTION_MEDIA_SCANNER_SCAN_FILE 直到重新启动才显示图像?

我目前正在开发一个 Android 应用程序,用户可以在其中拍摄存储在设备外部存储器中的照片,然后我试图让画廊扫描文件以将新媒体添加到画廊,但这似乎不会更新,直到设备重新启动。

我正在使用的代码如下:

用我的应用程序拍照后,我可以使用设备上的文件管理器应用程序验证它是否存在,并在将它传递给 Media Scanner 之前记录它似乎正确的文件路径

谢谢亚伦

0 投票
1 回答
1186 浏览

android - 保存后的图像在 Gallery android 中看不到

我将图像从保存res/drawableGallery使用InputStreamOutputStream。它工作正常并保存图像。但问题是它不会更新图库中的图像。如果我使用检查文件夹,ES File Explorer那么我可以在那里看到图像。我还检查了,它也会在代码执行ddms后立即更新图像。如果我保存服务器图像,它工作正常。如何防止这个问题?我想在图像保存后立即更新图库。我也尝试扫描文件夹但没有效果。我的代码:write



MediaScanner

0 投票
1 回答
296 浏览

android - Android - MediaStore ID 是存储有关图片/专辑信息的安全方式吗?

在我的应用程序中,我通过存储它的 MediaStore id 来存储有关图像或图像专辑的信息。稍后我可能不得不执行需要这些图像/相册的操作。MediaStore id 是保存图像\专辑信息的安全方式吗?进一步来说:

1) 如果我存储的 id 的图像/专辑被删除,是否有可能新的图片/专辑可以使用此 id 导致我使用错误的图片/专辑?

2)当图片/abums被重命名或移动(使用手机上的文件浏览器或通过连接到笔记本电脑)时,它们的id会改变吗?

如果是这样...我应该采取什么措施来避免这些错误?

0 投票
2 回答
2827 浏览

android - 为什么我无法从 MediaStore 获取视频时长?

在我的一台设备上,以下代码无法让我的视频出现在图库中:

所以我scanFile明确使用:

当我的视频是 xxx.mpeg4 时,值为mMimeTypemp4,结果是视频可以出现在 MediaStore 中,但我之后无法获取时长(返回值始终为 0)。在这方面需要帮助。

0 投票
4 回答
17036 浏览

java - 将图像添加到媒体库 - Android

我正在尝试将新图像添加到图库。我通过一个意图选择一个已经存在的图像,然后调整大小并压缩它。

然后我存储生成的位图:

但是当我尝试将图像添加到图库时,我没有收到任何错误,并且没有添加图像。我尝试了以下两种方法:

回调打印以下行:

我错过了什么?

0 投票
2 回答
6339 浏览

android - 媒体扫描特定文件夹

我正在寻找可以扫描特定文件夹中文件的媒体扫描源。
或扫描特定文件夹中特定扩展文件(如 .mp4)的源。
谢谢。

0 投票
1 回答
273 浏览

android - ACTION_MEDIA_MOUNTED 不刷新图库

我从服务器获取图像并将其显示在我的应用程序中,然后我下载了该图像并且下载工作正常,但是当我检查我的图库图像没有显示在那里时,然后在开发工具-媒体扫描仪中我扫描我的 SD 卡并再次检查我的画廊,然后图像正在显示..那么我该如何解决它..即使我尝试了三星手机,但使用设备我需要重新启动我的设备...以下是我的代码段...

}

0 投票
1 回答
1683 浏览

android - how to toggle .nomedia file programmatically

I'm creating an Application to show and hide "Viber Images" folder of Viber App which is located in /viber/media/. I know I should delete and create .nomedia file in that folder and then force media scanner to scan that.

when I send a broadcast or statically using MediaScannerConnection to rescan that folder takes more than a quarter for gallery to update that folder.

I tried:

But it's not updating the media scanner because folder is being showed in the gallery.

and I also tried:

and the logcat shows:

it seems it's updating the media scanner database But cannot effect gallery app to update its content. there is a free app called nomedia in playstore which does exactly what I want in my phone But my codes not working.

is there any method or built-in class to do so? or are there any ways to do so programmatically?

sorry for my bad english.

any answer appreciated.

0 投票
0 回答
502 浏览

android - 如何在手机图库的特定文件夹中显示捕获的图像?

这是我的第一篇文章。如有错误请指正:)

我在画廊的特定文件夹中显示图像(通过我的应用程序捕获)时遇到问题。我已经设法将它保存在目录中我的应用程序文件夹中,但是当我进入图库时,它不会显示我的应用程序文件夹(首次创建时)和捕获的图像,除非我重新启动手机。

我在 Android 4.4.4 上运行,根据这个,这似乎是一个错误?

无论如何,这是我的代码:

其中上面的方法会在下面的 onActivityResult(int requestCode, int resultCode, Intent data) 方法中被调用:

这是我在保存捕获的图像之前检查和创建目录的方法:(结果路径:/storage/emulated/0/Pictures/TravelBuddy)

我对整个事情(捕获,存储等)都是新手,并且已经尝试了好几天。任何帮助深表感谢。先感谢您!

0 投票
0 回答
808 浏览

android - 调用 MediaScannerConnection.scanFile 后,MediaStore 中的 Android 缩略图未刷新

我正在尝试构建一个类似画廊的应用程序,它将在外部存储上执行以下功能:

  • 列出所有包含图像的文件夹
  • 列出所有可供公众使用的图像(不会探查里面的文件Android/data

到目前为止,我可以列出所有图像和包含图像的文件夹。但是,我后来发现这些图像和文件夹不是最新的:我放了一些图片后它们并没有刷新(比如我只是做了一些截图或下载了一些图片)。

并且即使在我打电话后也不会出现新图片MediaScannerConnection.scanFile

除了MediaScannerConnection,我还尝试了Intent.ACTION_MEDIA_SCANNER_SCAN_FILE使用指定文件夹的昂贵方法,但没有运气。

我已经浏览了 StackOverflow 以及与讨论此问题的人的各种资源,但没有一个可以提供工作方法。

我检查/尝试过的来源:

代码:

我如何列出所有图像:

这是我开始扫描图像的方法,我打算扫描整个外部存储,但现在,我只扫描 DCIM、图片和下载只是为了实验

问题:

我在 Stock 5.0.2 和 4.4 上进行了测试,两者的结果相同。

  1. 我做错什么了吗?
  2. 为什么 MediaScanner 不工作?

笔记:

有趣的是,如果我打开 Instagram 并从那里打开“选择画廊”。图库内容正在刷新。所以这意味着Instagram在“图库刷新”方面做得很好,这样我的应用程序也可以接收最新的图库内容,他们是怎么做到的?