由于当前版本的 Android 操作系统已弃用“android.hardware.Camera”库,因此已禁用旧的用法。而且我不知道如何在当前版本的 Android 上以编程方式访问相机的实例。
当前库是“android.hardware.camera2.*”。
有谁知道如何做到这一点 ?谢谢。
由于当前版本的 Android 操作系统已弃用“android.hardware.Camera”库,因此已禁用旧的用法。而且我不知道如何在当前版本的 Android 上以编程方式访问相机的实例。
当前库是“android.hardware.camera2.*”。
有谁知道如何做到这一点 ?谢谢。
我还制作了一个库来简单地使用 Camera2,你可能想试一试!
https://github.com/omaflak/Android-Camera2-Library
这是它最后的样子:
EZCam cam = new EZCam(this);
cam.selectCamera(EZCam.FRONT); // or EZCam.BACK
cam.setStopPreviewOnPicture(true);
cam.setEZCamCallback(new EZCam.EZCamCallback() {
@Override
public void onPicture(ImageReader reader) {
// picture available
cam.saveImage(reader, "image.jpeg"); // save to internal storage
}
@Override
public void onError(String message) {
// error occurred
}
});
TextureView textureView = (TextureView)findViewById(R.id.textureView);
textureView.setSurfaceTextureListener(new TextureView.SurfaceTextureListener() {
@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int i, int i1) {
cam.startPreview(surfaceTexture, i, i1);
}
});
// take picture
cam.takePicture();
// stop preview
cam.stopPreview();
// resume preview
cam.resumePreview();
要安装该库,请添加您的 gradle 依赖项:
compile 'me.aflak.libraries:ezcam:1.0'
希望它会有所帮助!