安卓获取多媒体(包括 视频、音频、图片)数据

1.Android中所有的多媒体文件除了存储在物理硬盘上,还会将文件信息(路径、id、类型、)保存到数据库中,这样当我们想要获取这些文件的信息时,就不需要耗时的扫描硬盘,只需要读数据库就可以了。Android平台中称手机终端内存为内部存储空间,称SD卡为外部存储空间。针对内部和外部存储空间中的媒体文件信息是分开管理的,各自有独立的数据库管理。外部存储空间和内部存储空间对应的卷标为”external”和”internal”。

2.数据库的数据都会由相应的内容提供者暴露出来,根据预先定义的URI,可以轻松获取这些数据

3.安卓有一个服务专门用于将文件信息扫描添加到数据库中,该服务开机自启动(监听了开机广播),也可以由开发人员在特定的时机主动发送广播更新数据库的信息,比如刚刚保存了一张图片希望立刻在图库中看到。

下面代码演示如何获取手机视频文件的一些数据

 ContentResolver contentResolver=context.getContentResolver();
                Uri uri= MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
                String[] projection={
                        MediaStore.Video.Media.DISPLAY_NAME,//视频在sd卡中的名称
                        MediaStore.Video.Media.DURATION,//视频时长
                        MediaStore.Video.Media.SIZE,//视频文件的大小
                        MediaStore.Video.Media.DATA,//视频的绝对路径
                        MediaStore.Video.Media.ARTIST//艺术家
                };
                Cursor cursor=contentResolver.query(uri,projection,null,null,null);

遍历cursor即可获取手机视频文件的数据

如果要获取音频文件,用MediaStore.Audio.Media.EXTERNAL_CONTENT_URI

如果要获取图片文件,用MediaStore.Images.Media.EXTERNAL_CONTENT_URI

时间: 2024-10-13 21:52:02

安卓获取多媒体(包括 视频、音频、图片)数据的相关文章

android获取多媒体库的视频、音频、图片

从媒体库中查找音频.视频.图片文件的相关信息,并获取视频.图片.专辑图片的缩略图 和一些文件操作 package com.uwatch.swconnectservice.util; import java.io.File; import java.io.FileDescriptor; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import ja

C#调用TWAIN使用Kodak组件获取扫描仪图片数据

其中一种就是微软官方推出的WIA接口调用扫描仪,这种方式是目前最新的.其实这种方式很容易编写, 只不过它内部不会存储用户需要扫描的分辨率等信息,不过这种方法在与方便快捷,直接安装WIA控件到 Windows,直接在C#代码中编写就可以直接调用,不用自己编辑控件的属性等,很方便易用. 另外一种方式就是传统的TWIAN,因为很多扫描仪厂家都墨守陈规的遵循了TWAIN的潜规则,所以这种方法 也是得到了很多编程爱好者的欢迎,这个接口可以直接调用扫描仪厂家已经编写好的扫描窗口,可以实现在驱 动层获取到图片

MVP+Dagger2+Rxjava+Retrofit+GreenDao 开发的小应用,包括新闻、图片、视频3个大模块,代码封装良好

练习MVP架构开发的App,算是对自己学过的知识做一个总结,做了有一段时间,界面还算挺多的.代码量还是有的,里面做了大量封装,总体代码整理得非常干净,这个我已经尽力整理了. 不管是文件(java.xml.资源文件)命名.还是布局设计尽量简单简洁,代码不会写的非常复杂.整个代码结构有非常高的统一度,结构也比較简单清晰,方便理解.里面做了大量的封装,包含基类的构建和工具类的封装.再配合Dagger2的使用能够极大地减轻V层(Activity和Fragment)的代码,假设你有看源代码的话你会发现大部

使用图片跨域方式获取图片数据 使用 jsonp 方式跨域获取数据

使用图片跨域方式获取图片数据 server.get(`/mockImg`, (req, res, next) => { // 使用图片跨域方式获取图片数据 req.headers.origin && res.setHeader(`Access-Control-Allow-Origin`, req.headers.origin) res.setHeader(`content-type`, `image/gif`) res.setHeader(`data`, `image/gif`) v

安卓第十六天笔记-音频与视频播放

安卓第十六天笔记-音频与视频播放 音频与视频播放 1.音频 播放应用资源中的音乐 应用中的音乐一般放在res/raw目录下 /** * 播放应用资源中的音乐 * * @param v */ public void player1(View v) { // 设置播放数据源 MediaPlayer mediaPlayer = MediaPlayer.create(this, R.raw.gm); // 不需要准备,create,创建完成直接可以使用播放 mediaPlayer.start(); }

笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)

打开后缀.apk的文件,即启动安装程序: //apkFilePath 文件路径 public void installAPK(String apkFilePath) { // 创建URI Uri uri = Uri.fromFile(new File(apkFilePath)); Intent intent = new Intent(Intent.ACTION_VIEW); // 设置Uri和类型 intent.setDataAndType(uri, "application/vnd.andro

iOS实现视频和图片的上传

关于iOS如何实现视频和图片的上传, 我们先理清下思路 思路: #1. 如何获取图片? #2. 如何获取视频? #3. 如何把图片存到缓存路径中? #4. 如何把视频存到缓存路径中? #5. 如何上传? 接下来, 我们按照上面的思路一步一步实现 首先我们新建一个类, 用来储存每一个要上传的文件uploadModel.h #import <Foundation/Foundation.h> @interface uploadModel : NSObject @property (nonatomic

php 获取优酷视频的真实地址(2014.6月新算法)

上个礼拜发现优酷改版了,各种过滤优酷广告的插件都失效了,于是我百度了一下(谷歌也不能用了)发现优酷改算法了,在ckplayer论坛发现有人在6月25号发了个php 的优酷代理文件,下载下来发现,能用但只能获取mp4格式的视频地址,而且php还加密了,没办法查看源码,后来通过微盾解密发现其中的源码,结合以前自己写的一个优酷视频解析类.... 感谢    3shi大大 具体分析请见 3shi大大的文章  优酷视频真实地址解析  (当然现在不能用了,主要看分析) ps.  新算法是从别人那里解密出来的

安卓平台的音视频互动开发平台

兼容Google.HTC.小米.Samsung.华为等主流硬件设备 支持iOS.Web.PC等设备和Android之间的互联互通 视频会话时,默认打开前置摄像头: 能够有Java音视频采集.显示驱动,兼容更多Android设备: 想要在Android平台下实现音视频通信,最快捷的方法是寻找开源项目或调用其他公司封装好的API,接下来小编介绍一款不错的SDK包给大家,(安卓平台的音视频互动开发平台)下面是一些关于如何调用相关API接口的方法,大家可以相互交流交流. Android通信平台相关API