【Android】相机的简单调用

原创 2015年11月20日 19:06:27

不多说,慢慢积累,希望有一天能玩转这个领域。
在项目开发中几乎所有程序都不可避免的要用上相机,因为你要上传头像,不可避免的就要有拍照功能。多数的软件会采用调用系统相机来完成这个业务。接下来要讲的就是调用系统相机拍照来保存成头像。


开始

网上相关的代码一大堆,但是我不能每次都去网上扒,这是一种不思进取的行为,扒过一次我们就要记住它,弄懂它!干掉它!


1、调用系统相机
就下面的两句,只要你执行这两句就能

// 就这样就打开相机了
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 1);//这个1的含义,是拍完照之后需要用到的。
//当我们startActivityForResult(intent,1)拍完照之后就会调用onActivityResult()这个方法。下面介绍一下这个方法(注释为源码注释)

 /**
     * Called when an activity you launched exits, giving you the requestCode
     * you started it with, the resultCode it returned, and any additional
     * data from it.  The <var>resultCode</var> will be
     * {@link #RESULT_CANCELED} if the activity explicitly returned that,
     * didn't return any result, or crashed during its operation.
     *
     * <p>You will receive this call immediately before onResume() when your
     * activity is re-starting.
     *
     * <p>This method is never invoked if your activity sets
     * {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to
     * <code>true</code>.
     *【通俗的讲就是,让你知道是谁调用的此方法,获取相应的data】
     * @param requestCode The integer request code originally supplied to
     *                    startActivityForResult(), allowing you to identify who this
     *                    result came from.
     * 【通俗的讲就是,让你知道是那个Activity返回的数据,获取相应的data】
     * @param resultCode The integer result code returned by the child activity
     *                   through its setResult().
     * @param data An Intent, which can return result data to the caller
     *               (various data can be attached to Intent "extras").
     *
     * @see #startActivityForResult
     * @see #createPendingResult
     * @see #setResult(int)
     */
  @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data); 
        // 这里的PHOTO_RESULT = 1;就是之前我们starActivity是传递的1;拍完照后就会调用此方法,并把照片放到Bundle 里面,     
         if (requestCode == PHOTO_RESULT) {
                Bundle extras = data.getExtras();
                if (extras != null) {
                   Bitmap photo = extras.getParcelable("data");
                    ByteArrayOutputStream stream = new ByteArrayOutputStream();
                    //将图片压缩
                    photo.compress(Bitmap.CompressFormat.JPEG, 75, stream);
                    //将图片设置到ImageView上展示即可。
                    header_img.setImageBitmap(photo);

                }
            }     
    }
 /*不知道你时候已经了解,粘源码注释的意思是,如果你有不懂得知识可直接查看源码,我认为多数情况下源码还是描述的很清晰的*/

对,就这么简单,有疑问?直接在下面评论就行,我帮你解决!或者liumeng_android@163.com 邮给我。前辈,大神欢迎赐教!

结束,谢谢!鞠躬~

版权声明:本文为博主原创文章,未经博主允许不得转载。

android中相机的简单调用

1.生命周期方法中初始化和释放Camera @TargetApi(Build.VERSION_CODES.GINGERBREAD)  @Override  public void onResum...
  • u012325403
  • u012325403
  • 2015年09月18日 16:51
  • 2077

安卓下自定义相机简单实现

关于安卓自定义相机,网上有不少的源码。但是功能实现上一般都还会略有不足比如对焦方式,camera资源的释放等等。还有的自定义相机是基于opnCV实现,应用于AR场景,在这里我们暂时用不到这样高大上的技...
  • lucasey
  • lucasey
  • 2016年05月11日 14:12
  • 1481

Android学习之调用系统相机实现拍照功能

一、今天,来介绍如何调用系统自带的相机进行拍照,主要有以下2种实现的方式: 1、Camera应用程序包含了一个意图过滤器,即intent filter,它使得开发人员能够提供与Camera应用程序同...
  • u012561176
  • u012561176
  • 2015年11月28日 12:26
  • 5348

Android调用系统相机简单实现

  • 2015年11月29日 17:35
  • 2.47MB
  • 下载

android --相机调用方式(简单的转载复制粘贴)

原文地址: http://www.apkbus.com/?103646     在android中应用相机功能,一般有两种:一种是直接调用系统相机,一种自己写的相机。 我将分别演示两种方式的使...
  • u012677852
  • u012677852
  • 2013年11月27日 09:16
  • 895

Android调用系统相机简单实现

Android调用系统相机简单实现项目简单介绍调用系统相机两种简单的实现方法,两种都是想调用系统相机进行拍到,第一种返回data中的数据,是缩略图,第二种照片是先保存再通过uri取出,保存的是原图。...
  • Alex_Melody
  • Alex_Melody
  • 2015年11月29日 15:40
  • 231

Android官方开发文档Training系列课程中文版:调用相机之简单摄像

原文地址:http://android.xsoftlab.net/training/camera/videobasics.html这节课解释了如何通过已有的相机应用拍摄视频。假设你的程序含有摄像功能,...
  • u011064099
  • u011064099
  • 2016年04月19日 17:15
  • 986

android相机相册使用简单例子v1.0

  • 2014年12月31日 11:30
  • 455KB
  • 下载

Android摄像头基础——第一阶段 简单利用系统相机并且获取照片

这篇是讲述Android中摄像头基础的,处于第一阶段,简单的利用系统相机拍照并获取相应的照片。...
  • qq_22804827
  • qq_22804827
  • 2016年01月20日 12:39
  • 254

Android Camera 相机简单操作

在Android 一般拍照主要有两种方式,一种是调用系统相机,拍照之后获取路径显示。而另外一种则是调用Camera 然后去拍照。 Ok,那么今天讲的是后者.主要是自己编写代码去完成拍照功能。 首先...
  • u013151336
  • u013151336
  • 2016年05月03日 11:14
  • 478
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Android】相机的简单调用
举报原因:
原因补充:

(最多只允许输入30个字)