[size=medium][/size]这几天 在学习并开发android系统的图片浏览 音频 视频 的浏览 由于是第一次做android系统(java也不会)
遇到了很多问题 如何浏览并选择图片 音频 视频也花了我好几天的时间
我把它整理处理 以便帮助和我一样的同学 也同时防备自己忘记
<1> 选择按钮的代码
// 选取图片按钮单击事件
public void click_xuanqutupian(View source) {
Intent intent = new Intent();
/* 开启Pictures画面Type设定为image */
intent.setType("image/*");
//intent.setType("audio/*"); //选择音频
//intent.setType("video/*"); //选择视频 (mp4 3gp 是android支持的视频格式)
/* 使用Intent.ACTION_GET_CONTENT这个Action */
intent.setAction(Intent.ACTION_GET_CONTENT);
/* 取得相片后返回本画面 */
startActivityForResult(intent, 1);
}<2> 取得选择的项 以后 处理的地方
遇到了很多问题 如何浏览并选择图片 音频 视频也花了我好几天的时间
我把它整理处理 以便帮助和我一样的同学 也同时防备自己忘记
<1> 选择按钮的代码
// 选取图片按钮单击事件
public void click_xuanqutupian(View source) {
Intent intent = new Intent();
/* 开启Pictures画面Type设定为image */
intent.setType("image/*");
//intent.setType("audio/*"); //选择音频
//intent.setType("video/*"); //选择视频 (mp4 3gp 是android支持的视频格式)
/* 使用Intent.ACTION_GET_CONTENT这个Action */
intent.setAction(Intent.ACTION_GET_CONTENT);
/* 取得相片后返回本画面 */
startActivityForResult(intent, 1);
}<2> 取得选择的项 以后 处理的地方
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // 选取图片的返回值 if (requestCode == 1) { // if (resultCode == RESULT_OK) { Uri uri = data.getData(); Cursor cursor = getContentResolver().query(uri, null, null, null, null); cursor.moveToFirst(); // String imgNo = cursor.getString(0); // 图片编号 imgPath = cursor.getString(1); // 图片文件路径 String imgSize = cursor.getString(2); // 图片大小 String imgName = cursor.getString(3); // 图片文件名 fileName = imgName; fileSize = imgSize; // Log.e("uri", uri.toString()); ContentResolver cr = this.getContentResolver(); try { Bitmap bitmap = BitmapFactory.decodeStream(cr .openInputStream(uri)); ImageView imageView = (ImageView) findViewById(R.id.imview); /* 将Bitmap设定到ImageView */ imageView.setImageBitmap(bitmap); // imageView.setImageURI(uri);// 可以直接显示图片; } catch (FileNotFoundException e) { // Log.e("Exception", e.getMessage(),e); } } } // 拍照的返回值 if (requestCode == 2) { if (resultCode == RESULT_OK) { // imgPath = data.getStringExtra("filePath"); fileName = data.getStringExtra("fileName"); fileSize = data.getStringExtra("fileSize"); // 读取拍照所得的文件 try { Bitmap bitmap = this.getLoacalBitmap(imgPath); ImageView imageView = (ImageView) findViewById(R.id.imview); imageView.setImageBitmap(bitmap); } catch (Exception e) { // TODO: handle exception } // } } super.onActivityResult(requestCode, resultCode, data); Uri介绍: Uri代表了要操作的数据,Uri主要包含了两部分信息:1》需要操作的ContentProvider ,2》对ContentProvider中的什么数据进行操作,一个Uri由以下几部分组成: l ContentProvider(内容提供者)的scheme已经由Android所规定, scheme为:content:// 主机名(或叫Authority)用于唯一标识这个ContentProvider,外部调用者可以根据这个标识来找到它。 路径(path)可以用来表示我们要操作的数据,路径的构建应根据业务而定,如下: 要操作person表中id为10的记录,可以构建这样的路径:/person/10 要操作person表中id为10的记录的name字段, person/10/name 要操作person表中的所有记录,可以构建这样的路径:/person 要操作xxx表中的记录,可以构建这样的路径:/xxx 当然要操作的数据不一定来自数据库,也可以是文件等他存储方式,如下: 要操作xml文件中person节点下的name节点,可以构建这样的路径:/person/name 如果要把一个字符串转换成Uri,可以使用Uri类中的parse()方法,如下: Uri uri = Uri.parse("content://cn.itcast.provider.personprovider/person")发表评论
-
sqlite3中对表字段的增删改查
2011-09-21 16:18 3024android今天在做数据库升级时,碰到要对原来数据库中一张表 ... -
[转]Android自定义控件之TextView
2011-09-20 10:06 1388[size=medium][/size]有时候Android自 ... -
【转】android系统程序调用
2011-09-16 16:59 977[size=medium][/size]显示网页: 1 ... -
【转】Tasks and Back Stack
2011-09-15 13:46 906Tasks and Back Stack 一个应用通常包括 ... -
handler中post一个runnable问题
2011-09-15 10:00 4879Runnable 并不一定是新开一个线程,比如下面的调用方法就 ... -
【转】关于Activity和Task的设计思路和方法
2011-09-14 15:34 660Activity和Task是Android Appli ... -
判断当前网络是否可用
2011-09-14 11:56 955public boolean isNetworkAvailab ... -
android中sd卡常用状态解析
2011-09-14 10:24 2148[align=left][/align][size=mediu ... -
android无法向sd卡写入数据原因
2011-09-14 09:32 1169[/size][size=x-small] 当手机作为u ...
相关推荐
在Android开发中,有时我们需要将一系列的静态图片合成为视频,以便用户可以以动态的形式查看。这个"Android图片合成视频的小Demo"就是这样一个实用的工具,它利用了Android的MediaCodec、MediaMuxer等核心组件,...
在Android平台上,多媒体功能的实现是一项重要的任务,涵盖了图片、音频和视频的处理,包括展示、拍摄、预览以及存储等多个方面。以下是一些关键的知识点: 1. 图片展示: - `ImageView`:这是Android中最基本的...
在移动开发领域,Android平台为开发者提供了丰富的工具和框架来创建引人入胜的全景图片和视频应用。全景内容能够给用户带来沉浸式的体验,广泛应用于旅游、房地产、游戏以及虚拟现实(VR)等多个行业。Android系统...
【描述】:这个库的主要目的是简化Android应用中的媒体选择过程,提供一个用户友好的界面,允许用户从他们的设备中挑选图片、视频或音频文件。它被设计得简洁易用,可以快速集成到你的项目中,从而节省开发者编写...
`MediaPlayer`是Android SDK提供的一种核心组件,专门用于播放音频和视频文件。在这个场景中,我们将详细探讨如何使用`MediaPlayer`来播放视频,同时结合`SurfaceView`来显示视频画面。本文将深入解析相关知识点,并...
本示例专注于"竖屏"模式,确保用户在预览、拍照和录制视频时获得正确的横竖屏体验。以下是对这个“android 摄像头、视频录制demo (竖屏)”的详细解释: 1. **摄像头预览布局**: - 在Android中,摄像头预览通常...
本文实例讲述了Android编程实现获取多媒体库视频、音频、图片的方法。分享给大家供大家参考,具体如下: 从媒体库中查找音频、视频、图片文件的相关信息,并获取视频、图片、专辑图片的缩略图 和一些文件操作 ...
这意味着开发者可以在`assets`文件夹中放置任何类型的文件,如文本文件、音频文件、视频文件以及图片文件等。这些文件可以通过`AssetManager`类来访问。 #### 二、获取 Assets 文件夹中的图片 在Android开发中,...
MediaStore是Android系统提供的内容提供者,用于访问设备上的媒体数据,如图片、视频和音频。我们可以直接查询MediaStore来获取系统图片的列表。以下是如何查询所有图片的示例: ```java ContentResolver resolver ...
在这个项目中,我们将详细探讨如何使用SDL2库播放视频、图片和音频,并且会涉及到内附带的相关音视频文件的处理。 1. **SDL2库介绍** SDL2全称为Simple DirectMedia Layer 2,它提供了一个底层接口,让开发者可以...
在Android系统中,彩信(Multimedia Messaging Service,MMS)是一种常见的用于发送多媒体内容,如图片、音频和视频的通信方式。然而,在特定版本的Android系统中,尤其是在Android 4.3版本,用户可能会遇到一个问题...
AVFoundation是苹果提供的一套强大的多媒体处理框架,它包括了处理音频、视频、时间线编辑等众多功能。 1. **AVAsset**:这是AVFoundation中的核心类,代表了一个媒体资源,可以是视频、音频或者复合媒体。通过...
3. 图片格式:拍照得到的图片通常为JPEG格式,可以通过MediaRecorder的setOutputFormat()方法设置。 三、Android UVC录像功能 1. 视频编码:MediaRecorder支持多种视频编码格式,如H.264,通过setVideoEncoder()...
FFmpeg 是一个强大的开源命令行工具,用于处理各种多媒体文件,包括视频、音频、图片等。在Android平台上,FFmpeg可以被集成到应用程序中,实现视频的解析、转码、剪辑等多种功能。本篇文章将深入探讨如何在Android...
它支持硬件加速,可以高效地处理视频和音频数据。本篇文章将深入探讨“Android硬解码MediaCodecDemo”,介绍如何利用MediaCodec进行硬解码操作,并处理在实际应用中可能遇到的crash、ANR(Application Not ...
12.2.1 Android音频/视频播放状态 284 12.2.2 音频播放案例介绍 286 12.2.3 资源音频文件播放 287 12.2.4 本地音频文件播放 291 12.2.5 网络音频文件播放 292 12.2.6 完善案例其他功能 293 12.3 Android音频...
- 录像:Camera2 API没有内置的录像功能,开发者需要自行实现,这通常涉及创建多个`CaptureRequest`,同时处理视频流和音频流,使用`MediaCodec`进行编码。 3. **权限管理**: 使用Camera API前,需要在...
MediaRecorder是Android提供的一个类,用于处理音频、视频的录制工作。以下是一个简单的录音代码示例: ```java MediaRecorder mediaRecorder = new MediaRecorder(); mediaRecorder.setAudioSource(MediaRecorder....
2. **MediaPlayer类**:这是Android系统提供的用于播放音频和视频的基础组件。开发者可以使用它来控制音乐的播放、暂停、停止、下一曲和上一曲等功能。MediaPlayer支持多种音频格式,如MP3、AAC等。 3. **服务...