Articles of mediastore

在Android中selectvideo的最佳方式是什么?

我有一个完美的Intent.ACTION_PICK与我的照片。 startActivityForResult(新的意图(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI),SELECT_IMAGE); 但它不适用于video。 当我点击我的名单上的一个video,它发挥vidoe而不是送我回来。 startActivityForResult(新的意图(Intent.ACTION_PICK,android.provider.MediaStore.Video.Media.INTERNAL_CONTENT_URI),SELECT_VIDEO); 一个主意 ?

如何查询Android SDK播放列表中的歌曲?

所以我的问题是如何查询播放列表内容。 我可以查询显示所有播放列表,但是如何查询显示特定播放列表中的歌曲。 谢谢

Android:EXTERNAL_CONTENT_URI足够用于照片库吗?

我正在玩Android的MediaStore类,并试图创build一个非常简单的照片库应用程序,当我注意到这是两个图像内容的URI: EXTERNAL_CONTENT_URI和INTERNAL_CONTENT_URI 。 起初我以为是指存储的位置(外部SD或内部存储器),但经过一些testing,显然不是这样。 我在这里阅读了更多关于它的内容,这似乎表明,内部uri实际上是设备上每个应用程序内部的内容。 然而,我不完全确定,并希望更熟悉MediaStore类的更有经验的开发人员的意见。 所以我的主要问题是,只是查询EXTERNAL_CONTENT_URI就足以得到所有的重要照片? 如果可能的话, INTERNAL_CONTENT_URI究竟是什么,它应该用于什么?

在Android中显示来自SD卡的大图

在Android中,您如何从SD卡上显示任意大小的图像, 而不会出现内存不足的错误 ? 是否有必要把图像放在媒体商店? 一个伪代码的例子将不胜感激。 如果显示的图像与设备的内存级别一样大,则需要加分 。

为什么MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI不提供准确的“专辑艺术家”?

我正在与Android MediaStore工作。 我可以得到设备上的音乐列表,以及与每个媒体项目(标题,艺术家,持续时间等)相关的所有细节, 我希望能够显示专辑列表,与他们的专辑艺术家。 要清楚的是,每个轨道都有一个艺术家,如“NoFX”,但如果轨道出现在Punk-O-Rama之类的编辑CD上,则艺术家是“NoFX”,但专辑艺术家可能是“Various Artists” “ 我在这里回顾了这个问题: Android – 从光标获取专辑艺术家 我试图用MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI和MediaStore.Audio.Albums.ARTIST来实现。 但是,这似乎并没有返回正确的结果。 看看Android的源代码,我可以看到实际上是MediaStore.Audio.Media.EXTERNAL_CONTENT_URI后面的album_artist字段,但标记为“@hide”。 (请参阅https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/provider/MediaStore.java上的 〜1170行)。 我发现这个领域通过其他[相关] Android源代码看: https : //android.googlesource.com/platform/development/+/master/apps/Development/src/com/android/development/MediaScannerActivity.java 我写了一个简单的应用程序/活动来testing这个: package com.ma.albumartisttest; import android.app.Activity; import android.database.Cursor; import android.os.Bundle; import android.provider.MediaStore; import android.util.Log; import android.util.SparseArray; import android.widget.TextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // query all media […]

Android Mediastore:如何高效地检索某种stream派的所有歌曲?

我知道如何检索特定歌曲的stream派 ,(请参阅获取stream派 ),但是我想要检索特定stream派的所有歌曲。 由于“stream派”似乎不是媒体项目的专栏之一,我不知道如何在一个查询中完成,而不像艺术家或专辑。 有没有一个有效的方法? 感谢名单!

Android – 快速获取隐藏图像和文件夹的方法

为了获取设备上的所有图像,我查询了ContentResolver的MediaStore.Images 。 现在我想添加一个选项来显示隐藏的文件,就像许多像QuickPic的图像应用程序一样。 有没有比recursionsearch手机上的所有目录更快的方式,并检查是否有一个.nomedia文件,如果是的话,检查是否可以find它的一些图像文件? 通过ContentResolver是不可能的?

为什么Images.Media.insertImage返回null

我有一些代码,我运行方法MediaStore.Images.Media.insertImage(插入一个来源而不是文件名),这段代码保存图像到MediaStore并返回图像的URI。 我知道,当它因任何原因失败时,将返回null而不是uri。 这个图像已经被很多人下载过多次,每过一段时间它都会从这个方法返回null。 我从来没有发生过这种事情,所以我不知道发生了什么事情。 这可能发生的原因是什么? 还有一个post有同样的问题,但答案是链接到MediaStore的源代码,但该链接转到页面说链接不可用。 任何帮助,将不胜感激。 谢谢。 删除我的SD卡后,我得到了这个错误,所以我知道这可能是一个原因,我不知道,但我觉得这也会发生,如果卡是满的。 仍然只是想知道是否还有其他的原因。

MediaStore – 查询所有types的文件(媒体和非媒体)

在类MediaStore.Files类中,其提到, 媒体提供程序表,包含媒体存储中所有文件的索引,包括非媒体文件。 我有兴趣查询PDF等非媒体文件。 我使用CursorLoader来查询数据库。 构造函数的第二个参数需要一个Uri参数,这个参数很容易获得媒体typesAudio,Images和Video,因为它们每个都有一个为它们定义的EXTERNAL_CONTENT_URI和INTERNAL_CONTENT_URI常数。 对于MediaStore.Files,没有这样定义的常量。 我尝试使用getContentUri()方法,但无法找出volumeName的参数值。 我尝试给“/ mnt / sdcard”,也是当我连接到我的系统设备,但徒劳出现的卷名称。 我在Google网上论坛上看到类似的问题,但这个问题还没有解决。 编辑:我也试过使用Uri.fromFile(新文件(“/ mnt / sdcard /”))和Uri.parse(新文件(“/ mnt / sdcard”)。toString()),但没有工作。

Android:如何获取应用程序私有文件的video缩略图?

题: 如何获取应用程序专用文件的video缩略图? 具体来说,有没有办法直接从.mpeg文件中提取video帧? 背景: 我的应用程序包括一个可以录制video的摄像头 出于产品原因,video文件最初是在应用程序的专用数据目录中以私人模式创build和写入的,使其对应用程序保密。 这是使用: Context#openFileOutput(fileName, Context.MODE_PRIVATE) – 一个典型的文件path如下所示:/ /data/data/[package.name]/files/[fileName].mp4 / Context#openFileOutput(fileName, Context.MODE_PRIVATE) /data/data/[package.name]/files/[fileName].mp4 – FYI我已经尝试使用Context.MODE_WORLD_READABLE而不是Context.MODE_PRIVATE但它没有帮助。 即使video可能最终在外部存储器中结束(通过将文件移动到Environment#getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES) ) ,video在应用程序专用存储器中时, 必须显示缩略图。 看起来像ThumbnailUtils.createVideoThumbnail(String, int)在文件被移动到公共目录(不pipe是否将其添加到MediaStore中)时可以正常工作,但当文件位于内部存储器中时,会以静默方式失败(返回null )。 注意:只要video文件位于应用程序专用存储器中,则不会将其添加到MediaStore(设备上的图像/video内容提供程序提供)。 只有当video移动到外部存储时,我才能将其添加到MediaStore中。 这是我不能绕行的与产品有关的决定; 除非有一种方法可以将video添加到媒体商店,而不会让其他应用可见…我不知道应用专用存储中的video是否可以添加到媒体商店,并保持应用专用,但获得所有免费“服务“由媒体商店提供的缩略图生成等。