2019独角兽企业重金招聘Python工程师标准>>>
在App中使用相机的两种方式:
1、调用系统相机、或者是具有相机功能的应用
2、自定义相机
调用系统相机的方式:
打开相机
//默认的返回图片,返回的只是缩略图Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(intent, REQ_CAMERA);
返回路径:
if(resultCode != RESULT_OK){return;}if(requestCode == REQ_CAMERA){if(data != null){Bundle bundle = data.getExtras();//Bundle里返回的是缩略图Bitmap bitmap = (Bitmap)bundle.get("data");mImageView.setImageBitmap(bitmap);}}
//指定图片返回路径Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);Uri uri = Uri.fromFile(new File(mFilePath));intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);startActivityForResult(intent, REQ_CAMERA_ORIGINAL_IMAGE);
else if(requestCode == REQ_CAMERA_ORIGINAL_IMAGE){//获取原图Bitmap bitmap = BitmapFactory.decodeFile(mFilePath);mImageView.setImageBitmap(bitmap);}
3、注册Camera功能:
新建一个module,在Activity里添加如下注册代码:
<activity android:name=".MyCameraActivity"><intent-filter><action android:name="android.media.action.IMAGE_CAPTURE" /><category android:name="android.intent.category.DEFAULT" /></intent-filter></activity>
便可以开启自定义相机的第一步了。