问题标签 [mediastore]
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.
android - 如何在 Android 上使用 MediaStore 将数据从相机保存到磁盘?
对于我的应用程序,我一直在使用我自己的 Camera 类来拍摄图像和我自己的数据库,但很快我就跟不上变化了,我决定使用 Android 中内置的相机应用程序来完成这项工作,但是我似乎无法让它保存文件。我在这里想念什么?该应用程序似乎保存了文件,但它只有 0 个字节。我查找了 Camera 应用程序的源代码,它正在 Extras 中寻找“输出”来保存文件。任何帮助将不胜感激。
android - Android:获取图像位置
我正在寻找一种方法来查找 SD 卡上的图像,或者至少是相机拍摄的图像。
理想的解决方案是获取图像的文件路径或 URI 集合。我猜你可以通过 MediaStore 做到这一点,我只是不知道怎么做。
谢谢
android - 在 Android 1.5 + 上访问视频和照片
因此,我试图允许用户使用我的 Android 应用程序使用此处描述的方法选择特定的媒体: Access Pictures from Pictures app in my android app
它工作得很好,除了我似乎只能在视频或照片之间选择来向用户展示,而不是同时选择两者。有没有一个好的方法来做到这一点:
startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), SELECT_IMAGE);
谢谢!
android - Android MediaStore 插入视频
所以我们的应用程序可以选择拍照或录像。如果用户拍照,我们可以使用 MediaStore.Images.Media.insertImage 函数将新图像(通过文件路径)添加到手机的图库并生成 content:// 样式的 URI。鉴于我们只有它的文件路径,对于捕获的视频是否有类似的过程?
android - 如何使用 android 媒体服务将该媒体返回到我的活动中?
我有兴趣以两种方式捕获媒体以在我的活动中使用:
1)立即从提供的应用程序中捕获。(如在 Android 中使用相机活动)
Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); this.startActivityForResult(camera, PICTURE_RESULT);
2) 浏览图片/视频/音频库并从列表中选择。
我注意到我可以调用照片库
Intent intent = new Intent(Intent.ACTION_VIEW, target);
开始活动(意图);
但是仅用于视频呢?只有音频?我将如何从其中任何一个获取 URI?
android - 删除某些项目后,MediaStore 中的 ID 会发生什么情况?
假设:我从我的 SD 卡中删除了一个项目,然后我卸载了存储卡。
当 Android 重新扫描我的 SD 卡以进行更改时会发生什么?在 MediaStore 中,每一行都有一个 _ID,所以在我删除一个项目后,这个 _ID 会发生什么:
- 它是否保留在 MediaStore 中,是否与另一个项目相关联,或者,
- 它被永久删除?
android - 使用 Android MediaStore 管理媒体
我直接管理我的应用程序的媒体(图像、声音),读取并保存到 SD 卡。我应该改用 MediaStore 吗?我不太确定 MediaStore 的用途,而且 javadoc 也不是很有帮助。
应用何时应使用 MediaStore?非常感谢您简要概述 MediaStore 的优缺点。
android - 尽管在 2.X 中指定了 MediaStore.EXTRA_OUTPUT,但从相机中检索到小图片
我只是不明白:当我使用相机并指定输出文件时,返回的图像在许多设备上总是非常小(例如 Motorola Milestone 2.1、HTC Desire 2.1、Emulator 2.1、Emulator 2.0.1 ) 但不是全部(例如 Nexus One)。这是我为调出相机应用程序所做的工作:
拍摄图像后,我在以下位置获取其结果onActivityResult(int requestCode, int resultCode, Intent data)
:
位图很小,我想知道为什么会这样。我知道它曾经正常工作。
有没有人有同样的问题,甚至提示如何解决这个问题?
谢谢,
斯特夫
android - 从 SD 卡文件设置铃声通知
我的目标是从应用程序中存储在 SD 卡上的文件中设置用户通知声音。我正在使用这段代码:
当我在设备上运行它时,我不断收到错误:
我已经看到其他人使用这种技术,但我找不到任何关于实际需要传入哪些值才能将文件成功添加到 Android 系统以便可以将其设置为通知的文档。
android - 如何在 Android 上刷新 MediaStore?
这最初是 Android 论坛上的一般用户问题。然而,它必然成为一个编程问题。这是我的问题。
Android 有一项服务 - MediaScanner - 随时在后台运行(我相信)SD 卡被卸载并重新安装。该服务收集卡上所有媒体文件的数据,并提供可供音乐应用程序查询的 SQLite DB。大多数音乐应用程序都使用此服务,因为它可以节省与扫描 SD 卡相关的电池消耗。
自从我开始使用 android 以来,我一直遇到一个问题,即同步到设备的 M3U 播放列表即使在从 SD 卡中删除后仍保留在此 SQLite DB 中。尽管卡上只有大约 10 个 m3u 文件,但现在我使用的任何音乐应用程序中都显示了大约 40 个播放列表的集合。剩余的播放列表不播放,并且是空的。我可以通过从音乐应用程序中删除它们来手动删除它们,但我厌倦了这样做。必须有更好的方法来删除这些幽灵播放列表。
Android Market 上有两个应用程序 - SDRescan 和 Music Scanner,据说它们完全可以做到这一点,但它们都不起作用。
我开始编写自己的应用程序来刷新或删除 MediaStore 数据库并从头开始,但我并没有走得太远。我有一个运行以下代码的 android 应用程序:
我在网上找到了一些此代码的示例,作为扫描 SD 卡的一种方式,但我对此没有任何运气。有小费吗?
完整代码: