Android 流媒体系列(二)
来源:互联网 发布:淘宝网蒸锅小片毕链 编辑:程序博客网 时间:2024/05/29 00:30
import java.io.IOException;import android.app.Activity;import android.content.ContentResolver;import android.database.Cursor;import android.media.ExifInterface;import android.os.Bundle;import android.provider.MediaStore;public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //测试1 //getVideosInfo(); //测试2 //getPhotosInfo(); //测试3 getAudiosInfo(); } //获取设备上所有的视频信息private void getVideosInfo() {ContentResolver contentResolver=getContentResolver();String [] videoColumns=new String[]{MediaStore.Video.Media._ID,MediaStore.Video.Media.DATA,MediaStore.Video.Media.TITLE,MediaStore.Video.Media.MIME_TYPE};// 两种方法均可//Cursor cursor=// this.managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, videoColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.MIME_TYPE)); System.out.println("_id="+_id); System.out.println("title="+title); System.out.println("filePath="+filePath); System.out.println("mime_type="+mime_type);}} //获取设备上所有的照片信息 private void getPhotosInfo() {ContentResolver contentResolver=getContentResolver();String [] photoColumns=new String[]{MediaStore.Images.Media._ID,MediaStore.Images.Media.DATA,MediaStore.Images.Media.TITLE,MediaStore.Images.Media.MIME_TYPE,MediaStore.Images.Media.SIZE,MediaStore.Images.Media.ORIENTATION};// 两种方法均可//Cursor cursor=// this.managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, photoColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.MIME_TYPE));String size=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.SIZE));//得到照片旋转角度方法一String orientation0=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.ORIENTATION)); System.out.println("_id="+_id); System.out.println("size="+size); System.out.println("title="+title); System.out.println("filePath="+filePath); System.out.println("mime_type="+mime_type); System.out.println("第一处 orientation0="+orientation0); try {ExifInterface exifInterface=new ExifInterface(filePath);String image_length=exifInterface.getAttribute(ExifInterface.TAG_IMAGE_LENGTH);String image_width=exifInterface.getAttribute(ExifInterface.TAG_IMAGE_WIDTH);String orientation1=exifInterface.getAttribute(ExifInterface.TAG_ORIENTATION);String dateTime=exifInterface.getAttribute(ExifInterface.TAG_DATETIME);System.out.println("image_length="+image_length);System.out.println("image_width="+image_width);System.out.println("dateTime="+dateTime);//得到照片旋转角度方法二//应该结合ExifInterface源码分析.//此处有待于进一步分析和验证switch (Integer.valueOf(orientation1)) {case 1:System.out.println("第二处旋转角度="+0);break;case 2://matrix.invert(matrix);break;case 3://matrix.setRotate(180);System.out.println("第二处旋转角度="+180);break;case 4://matrix.invert(matrix);//matrix.setRotate(180);System.out.println("第二处旋转角度="+180);break;case 5://matrix.setRotate(90);//matrix.invert(matrix);System.out.println("第二处旋转角度="+90);break;case 6://matrix.setRotate(90);System.out.println("第二处旋转角度="+90);break; case 7: //matrix.invert(matrix);//matrix.setRotate(90);System.out.println("第二处旋转角度="+90);break; case 8://matrix.setRotate(270);System.out.println("第二处旋转角度="+270);break;default: break;}System.out.println("XXXXXXXXXXXXXXXXXXX");} catch (IOException e) {e.printStackTrace();}} } //获取设备上所有的音频信息 private void getAudiosInfo() {ContentResolver contentResolver=getContentResolver();String [] audioColumns=new String[]{MediaStore.Audio.Media._ID,MediaStore.Audio.Media.DATA,MediaStore.Audio.Media.TITLE,MediaStore.Audio.Media.MIME_TYPE};// 两种方法均可//Cursor cursor=// this.managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, audioColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.MIME_TYPE)); System.out.println("_id="+_id); System.out.println("title="+title); System.out.println("filePath="+filePath); System.out.println("mime_type="+mime_type);} } }
移动开发:Android中MediaStore使用示例
转载文章:http://blog.csdn.net/djy1992/article/details/9948105
- Android 流媒体系列(二)
- Android 流媒体系列(一)
- 流媒体系列(zz)
- 流媒体编程(二)
- 流媒体学习(二)
- Android直播实现(二)srs流媒体服务器部署
- 直播系列5-使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(二)
- 流媒体Live555学习(二)
- 流媒体Live555学习(二)
- Red5 流媒体 学习(二)
- Android开发系列(二)
- Android动画系列(二)
- 流媒体传输知识整理(二)
- 流媒体开发(二)后台音频播放
- android流媒体
- Android 流媒体
- android流媒体
- Android流媒体
- Conversion to Dalvik format failed with error 1错误解决
- dsPIC33F串口通讯中断接收发送数据-UART
- PHPCMS V9内容页点击量如何调用
- 对linux系统运行性能的分析
- svn: None of the environment variables SVN_EDITOR...问题解决
- Android 流媒体系列(二)
- Linux 性能监测:Network
- C# WinForm 跨线程访问控件
- 【读书笔记】usOS-II——任务管理
- fstat、stat和lstat的区别
- 关于使用 class_create,device_create,class_device_create 创建设备节点
- Test
- Linux 性能监测:IO
- Java学习开发知识PDF文档分享,有需要的沉畜猿帮我顶一下