03.Android之多媒体——使用ContentResolver获取音频文件
来源:互联网 发布:android app源码 编辑:程序博客网 时间:2024/06/05 16:36
通过ContentResolver类成员方法
query(Uri uri, String[] projection, String selection,String[] selectionArgs,String sortOrder);
查询Android系统已经存在的 媒体数据库 来获取的;
//方法一:public void getMusic(){Cursor cur = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, new String[]{MediaStore.Audio.Media.TITLE, MediaStore.Audio.Media.DURATION, //音频文件播放时长 MediaStore.Audio.Media.ARTIST, MediaStore.Audio.Media._ID, MediaStore.Audio.Media.DATA}, //音频文件路径 null, null, null);if(cur == null){System.out.println("————查询失败!————");}else if(!cursor.moveToFirst()){System.out.println("————音频不存在!————");}do{Music m = new Music();m.setTitle(cur.getString(0)); //0,1,2,3,4 和上面query(Uri uri, String[] projection, String selection, m.setDuration(cur.getString(1)); // String[] selectionArgs,String sortOrder);第二个参数的顺序是对应的m.setArtist(cur.getString(2));m.setId(cur.getString(3));m.setPath(cur.getString(4));}while(cur.moveToNext());}_____________________________________________________________________________________________________________public class Music {private String title;private String artist;private String id;private String path;private String duration;public String getDuration() {return duration;}public void setDuration(String duration) {this.duration = duration;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getArtist() {return artist;}public void setArtist(String artist) {this.artist = artist;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getPath() {return path;}public void setPath(String path) {this.path = path;}//方法二:public void getMusic(){ContentResolver contentResolver = getContentResolver();Uri uri = android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;Cursor cursor = contentResolver.query(uri, null, null, null, null);if(cursor == null){System.out.println("————查询失败!————");}else if(!cursor.moveToFirst()){System.out.println("————音频不存在!————");}else{int data = cursor.getColumnIndex(android.provider.MediaStore.Audio.Media.DATA);//对应数据库的列号int display_name = cursor.getColumnIndex(android.provider.MediaStore.Audio.Media.DISPLAY_NAME); //对应数据库的列号do{String music_name = cursor.getString(display_name);//音频文件名String path = cursor.getString(data);//音频文件路径}while(cursor.moveToNext());}}
- 03.Android之多媒体——使用ContentResolver获取音频文件
- android中通过ContentResolver获取媒体资源
- Android之多媒体使用——MediaPlayer播放音频
- android开发笔记之多媒体—SurfaceView
- Android之多媒体--使用MediaPlayer播放音频
- Android之多媒体--使用SoundPool播放音频
- Android之多媒体--使用MediaRecorder录制音频
- Android之多媒体--使用VideoView播放视频
- android开发笔记之多媒体—图形图像处理
- android开发笔记之多媒体—小图片的加载
- android开发笔记之多媒体—大图片的加载
- android开发笔记之多媒体—图像的操作
- android开发笔记之多媒体—图片的颜色处理
- android开发笔记之多媒体—Canvas的相关方法
- android开发笔记之多媒体—播放音频(音乐)
- android开发笔记之多媒体—SoundPool(音效池)
- android开发笔记之多媒体—VideoView播放视频
- android开发笔记之多媒体—MediaPlayer + SurfaceView播放视频
- 利用AWR 查看SQL 执行计划
- asp操作sql存储过程,枚举值常量(常用)
- backbone学习笔记二(框架简介)
- Java 类型转换
- ant 环境变量配置
- 03.Android之多媒体——使用ContentResolver获取音频文件
- 移植I2C-EEPROM驱动和看门狗驱动
- NYOJ-640 Geometric sum
- endomodo 网站
- ORACLE表结构获取
- URAL:1200 Horns and Hoofs
- 我的第一堂C语言课(win32)
- 并发Socket程序设计
- SDJZU-出租车费