当前位置:首页 > Android > 正文内容

【代码】android 调用系统视频录制并生成缩略图

jsc11年前 (2015-04-02)Android3250
package com.example.videocapture;
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.provider.MediaStore.Video.Thumbnails;
import android.provider.MediaStore.Video.VideoColumns;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity extends Activity {
private static final int VIDEO_CAPTURE = 0;
private ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageView = (ImageView) findViewById(R.id.imageView);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new
Intent(MediaStore.ACTION_VIDEO_CAPTURE);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, VIDEO_CAPTURE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int
resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK && requestCode ==
VIDEO_CAPTURE) {
Uri uri = data.getData();
Cursor cursor = this.getContentResolver().query(uri, null,
null,
null, null);
if (cursor != null && cursor.moveToNext()) {
int id =
cursor.getInt(cursor.getColumnIndex(VideoColumns._ID));
String filePath =
cursor.getString(cursor.getColumnIndex(VideoColumns.DATA));
Bitmap bitmap =
Thumbnails.getThumbnail(getContentResolver(),
id, Thumbnails.MICRO_KIND, null);
//ThumbnailUtils类2.2以上可用
// Bitmap bitmap =
ThumbnailUtils.createVideoThumbnail(filePath,
Thumbnails.MICRO_KIND);
imageView.setImageBitmap(bitmap);
cursor.close();
}
}
}
}


扫描二维码推送至手机访问。

版权声明:本文由微小站发布,如需转载请注明出处。

本文链接:https://jsc0.com/post/35.html

标签: 视频录制
分享给朋友:

“【代码】android 调用系统视频录制并生成缩略图” 的相关文章

安卓开发中Android消息机制详解

在Android程序运行中,线程之间或者线程内部进行信息交互时经常会使用到消息,如果我们熟悉这些基础的东西及其内部的原理,将会使我们的Android开发变的容易、可以更好地架构系统。在学习Android消息机制之前,我们先了解与消息有关的几个类:  1.Message  消息对象,顾名思义就是记录消...

EditText焦点

<LinearLayout          style="@style/FillWrapWidgetStyle"      &n...

android异步任务详解 AsynTask

android异步任务详解 AsynTask

android提供了一套专门用于异步处理的类。即:AynsTask类。使用这个类可以为耗时程序开辟一个新线程进行处理,处理完时返回。其实,AsynTask类就是对Thread类的一个封装,并且加入了一些新的方法。编程时,两者都可以实现同样的功能。本文后面将对AsynTask和Thread...

Android采用SharedPreferences保存用户登录信息

Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。使用 SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data/<package name>/shared...

下拉刷新及滚动到底部加载更多的Listview使用

下拉刷新及滚动到底部加载更多的Listview使用

本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。 该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新)  b.可自定义滚动到底部响应的事件(如滑动到底部加载更多)  c.可自定义丰富的样式  d....

Android开发之资源文件存储

在android开发中,资源文件是我们使用频率最高的,无论是string,drawable,还是layout,这些资源都是我们经常使用到的,而且为我们的开始提供很多方便,不过我们平时接触的资源目录一般都是下面这三个。        /res...