[英]Camera error: Cannot connect to the camera
我想使用设备的内置摄像头功能。 阅读文档后,这就是我使用的方法
private void dispatchTakePictureIntent() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
}
}
在清单中,我添加了用法:
<uses-feature android:name="android.hardware.camera"
android:required="true" />
但是,当我调用该方法时,将出现错误对话框。 这是为什么?
使用具有目标API 23或更高版本的ACTION_IMAGE_CAPTURE意向的相机需要相机许可。 您必须在运行时请求此权限。
在这里,您可以找到有关此主题的视频教程。
如果要在单击按钮时打开相机,请使用以下代码。
在onCreate()方法中初始化按钮和图像视图。
photoButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK) {
Bitmap photo = (Bitmap) data.getExtras().get("data");
if(photo!=null)
imageView.setImageBitmap(photo);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.