调用 android 系统拍照结合 android-crop 裁剪图片

本文介绍了如何在Android应用中结合android-crop库实现用户头像更换的功能。首先讲解了如何调用系统相机拍照并获取略缩图,特别强调了在4.4及以上版本处理全尺寸图片的权限问题和使用FileProvider保存图片。接着,详细阐述了使用android-crop库进行图片裁剪的步骤,以及如何在onActivityResult方法中处理裁剪结果。
摘要由CSDN通过智能技术生成

在一个应用中更换用户的头像,一般有拍照和从图库中选择照片两种方法,现在网上也有很多开源的,但是很多都太复杂。而 Android-crop 这个库比较小,代码不复杂,比较适合,但是它没有拍照这个功能,需要我们自己整合进去。

调用系统相机拍照

  1. 返回略缩图的拍照
 // 调用系统的拍照
    private void dispatchTakePictureIntent() {
        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
            startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
        }
    }

重写 onActivityResult 方法,系统相机会返回略缩图

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        Bitmap imageBitmap = (Bitmap) extras.get("data");
        mImageView.setImageBitmap(imageBitmap);
    }
}
  1. 返回全图片
    . 如果是全图片,一般都是存在手机的外部存储空间,这个时候需要读写外部的权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
                     
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值