Android 7.0版本相机的使用

Android 出了7.0版本相机需要添加一些权限,6.0需要自己动态添加权限可是到7.0就还是报权限的错误

1.首先在Manifest文件里添加


然后在res下新建一个目录


下面在代码中实现我这里也写了调用相册的方法。

首先在这里用 startActivityForResult 做的跳转

private void getPicFrom(int type) {
    switch (type) {
        //相机
        case CAPTURE_IMAGE_CAMERA:
            // 拍照
            //设置图片的保存路径,作为全局变量
            imageFilePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/filename.jpg";
            File temp = new File(imageFilePath);
            Uri imageFileUri = FileProvider.getUriForFile(this, "com.sjd.conch.fileprovider", temp);//获取文件的Uri
            Intent it = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);//跳转到相机Activity
            it.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            it.putExtra(MediaStore.EXTRA_OUTPUT, imageFileUri);//告诉相机拍摄完毕输出图片到指定的Uri
            startActivityForResult(it, 102);
            break;
        //相册
        case IMAGE_STORE:
            Intent intent1 = new Intent(Intent.ACTION_GET_CONTENT);
            intent1.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
            startActivityForResult(intent1, 103);
            break;

    }
}
实现  onActivityResult 实现这个方法,在这里面判断是拍照还是相册。

@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch (requestCode) {
        case 102:  //拍照
            if (resultCode == Activity.RESULT_OK) {
                Bitmap bmp = BitmapFactory.decodeFile(imageFilePath);
                mImgYhjt.setImageBitmap(bmp);
                picPathUrl = imageFilePath;
            }
            break;
        case 103:   //相册
            String path = UIUtils.getPath(this, data.getData());
            if (null != path) {
                File file = new File(path);
                mImgYhjt.setImageURI(UIUtils.getUriFromFile(BJYouHuiJuan_Activity.this, file));
                picPathUrl = path;
            }
            break;
    }
    super.onActivityResult(requestCode, resultCode, data);

}
这样7.0的相机就可以使用,写的不好希望大家多多指点!!!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值