Android多媒体分析-通过MediaStore获取Audio信息
- public void getAlldata() {
- ContentResolver cr = getApplication().getContentResolver();
- if (cr == null) {
- return;
- }
- // 获取所有歌曲
- Cursor cursor = cr.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
- null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
- if (null == cursor) {
- return;
- }
- Music music;
- List<Music> list = new ArrayList<MainActivity.Music>();
- if (cursor.moveToFirst()) {
- do {
- //歌曲名
- String title = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.TITLE));
- //歌手
- String singer = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.ARTIST));
- //专辑
- String album = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.ALBUM));
- //长度
- long size = cursor.getLong(cursor
- .getColumnIndex(MediaStore.Audio.Media.SIZE));
- //时长
- int duration = cursor.getInt(cursor
- .getColumnIndex(MediaStore.Audio.Media.DURATION));
- //路径
- String url = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.DATA));
- //显示的文件名
- String _display_name = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
- //类型
- String mime_type = cursor.getString(cursor
- .getColumnIndex(MediaStore.Audio.Media.MIME_TYPE));
- music = new Music();
- music.setAlbum(album);
- music.setDuration(duration);
- music.setSinger(singer);
- music.setSize(size);
- music.setTitle(title);
- music.setUrl(url);
- music.set_display_name(_display_name);
- music.setMime_type(mime_type);
- list.add(music);
- } while (cursor.moveToNext());
- }
- System.out.println(list.size());
- }
- class Music
- {
- private String title;
- private String singer;
- private String album;
- private long size;
- private int duration;
- private String url;
- private String _display_name;
- private String mime_type;
- public String get_display_name() {
- return _display_name;
- }
- public void set_display_name(String _display_name) {
- this._display_name = _display_name;
- }
- public String getMime_type() {
- return mime_type;
- }
- public void setMime_type(String mime_type) {
- this.mime_type = mime_type;
- }
- public String getTitle() {
- return title;
- }
- public void setTitle(String title) {
- this.title = title;
- }
- public String getSinger() {
- return singer;
- }
- public void setSinger(String singer) {
- this.singer = singer;
- }
- public String getAlbum() {
- return album;
- }
- public void setAlbum(String album) {
- this.album = album;
- }
- public long getSize() {
- return size;
- }
- public void setSize(long size) {
- this.size = size;
- }
- public int getDuration() {
- return duration;
- }
- public void setDuration(int duration) {
- this.duration = duration;
- }
- public String getUrl() {
- return url;
- }
- public void setUrl(String url) {
- this.url = url;
- }
- @Override
- public String toString() {
- return "Music [title=" + title + ", singer=" + singer + ", album="
- + album + ", size=" + size + ", duration=" + duration
- + ", url=" + url + ", _display_name=" + _display_name
- + ", mime_type=" + mime_type + "]";
- }
- }
http://blog.csdn.net/lzh7752/article/details/45131539
Android多媒体分析-通过MediaStore获取Audio信息的更多相关文章
- Android多媒体数据库之MediaStore研究
应网友要求,今天给大家讲android的多媒体数据库.MediaStore这个类是android系统提供的一个多媒体数据库,android 中多媒体信息都可以从这里提取.这个MediaStore包括了 ...
- 通过GeoIP2分析访问者IP获取地理位置信息
原文链接:http://blog.csdn.net/johnnycode/article/details/42028841 MaxMind GeoIP2 服务能识别互联网用户的地点位置与其他特征,应用 ...
- Android GPS应用:动态获取位置信息
在上文中,介绍了GPS概念及Android开发GPS应用涉及到的常用类和方法.在本文中,开发一个小应用,实时获取定位信息,包括用户所在的纬度.经度.高度.方向.移动速度等.代码如下: Activity ...
- Android之使用MediaMetadataRetriever类获取媒体信息
一.昨天.介绍了使用MediaMetadataRetriever类来获取视频第一帧:http://blog.csdn.net/u012561176/article/details/47858099,今 ...
- android使用百度地图SDK获取定位信息
本文使用Android Studio开发. 获取定位信息相对简单.我们仅仅须要例如以下几步: 第一步,注冊百度账号,在百度地图开放平台新建应用.生成API_KEY.这些就不细说了,请前往这里:titl ...
- Android实现自动定位城市并获取天气信息
定位实现代码: <span style="font-size:14px;">import java.io.IOException; import java.util.L ...
- Android之QQ授权登录获取用户信息
有时候我们开发的app须要方便用户简单登录.能够让用户使用自己的qq.微信.微博登录到我们自己开发的app. 今天就在这里总结一下怎样在自己的app中集成QQ授权登录获取用户信息的功能. 首先我们打开 ...
- Java基础知识强化之网络编程笔记22:Android网络通信之 Android常用OAuth登录(获取个人信息)
1. 获取百度个人信息(使用Gson解析): 2. 代码案例: (1)工程一览图,如下: (2)activity_main.xml: <LinearLayout xmlns:android=&q ...
- 【Android Developers Training】 39. 获取文件信息
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
随机推荐
- tfs 分支
集团-IT部张强 11:15:211.主干时刻处于稳定状态,随时可以发布.设专门人员对主干代码进行管理,普通开发人员只读. 2.为开发任务建立开发分支.常规的可以以小组为单位建立分支,较大的任务可以建 ...
- unity3d Light Probe Group图解超详细使用方法
原创文章如需转载请注明:转载自http://blog.csdn.net/qq617119142 第一步,创建一个Panel 和 三个 cube,搭建成如下图形状 第二步,创建2个点光源,一个为绿灯,一 ...
- Recover Binary Search Tree [LeetCode]
Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...
- 分布式系统开发的一些相关理论基础——CAP、ACID、BASE
本文主要讲述分布式系统开发的一些相关理论基础. 一.ACID 事务的四个特征: 1.Atomic原子性 事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程中,要么全部执行成功,要么全 ...
- myeclipse启动tomcat会出现 a java exception has occured错误 的解决方法
在浏览器中可以打开tomcat,结果在myeclipse启动tomcat会出现 a java exception has occured错误 ,之后出现一个Classloader.class的文件,关 ...
- 如何在Linux下使用Gitblit工具创建Git仓库服务
嗨!朋友,今天我们将学习如何在你的Linux服务器或者PC上安装Gitblit工具.首先,我们看看什么是Git,它的功能以及安装Gitblit的步骤.Git是分布式版本控制系统,它强调速度.数据一致性 ...
- Java设计模式系列3--抽象工厂模式(Abstract Factory Method)
2014-02-26 10:55:47 声明:本文不仅是本人自己的成果,有些东西取自网上各位大神的思想,虽不能一一列出,但在此一并感谢! 工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果 ...
- IT公司100题-35- 求一个矩阵中最大的二维矩阵(元素和最大)
问题描述: 求一个矩阵中最大的二维矩阵(元素和最大).如: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 中最大的是: 4 5 9 10 分析: 2*2子数组的最大和.遍历求和,时 ...
- 安装EditPlus
生成注册码:http://www.jb51.net/tools/editplus/ 862C2-DABE8-E30AA-CCE33-65E69
- Android 命令管理项目
今天介绍一下Android怎么用命令管理项目,用命令管理Android项目需要用到Android命令,首先介绍一下用Android命令创建新项目,打开命令提示窗口,导航到Android SDK 的to ...