ActivityResultContracts.TakePicture() 帮我用java写一个 安卓 拍照功能
时间: 2024-04-30 09:20:15 浏览: 165
好的,下面是使用ActivityResultContracts.TakePicture() 实现的安卓拍照功能的Java代码:
```
// 首先在类头部定义一个常量来标识请求拍照的 Intent
private static final int REQUEST_IMAGE_CAPTURE = 1;
// 在需要实现拍照的地方,比如一个按钮的点击事件里,调用以下方法
private void dispatchTakePictureIntent() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
}
}
// 当用户拍完照并且返回应用时,会调用以下方法来处理拍照结果
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
// 从 Intent 获取拍照的照片
Bundle extras = data.getExtras();
Bitmap imageBitmap = (Bitmap) extras.get("data");
// 这里可以将照片进行处理或展示
}
}
```
以上就是使用ActivityResultContracts.TakePicture() 实现的安卓拍照功能的Java代码。希望对您有帮助。
阅读全文