类需要API级别21(当前最小值为19):android.hardware.camera2.CameraDevice.StateCallback
我只想使用纹理视图。 现在我知道了纹理视图这是什么,但我在youtube上看到了视频,并且做了与视频中相同的事情。 但是我对Api级别有一个问题 所以帮帮我吧。 感染者不知道api级别这是什么,它有多重要类需要API级别21(当前最小值为19):android.hardware.camera2.CameraDevice.StateCallback,android,android-camera2,Android,Android Camera2,我只想使用纹理视图。 现在我知道了纹理视图这是什么,但我在youtube上看到了视频,并且做了与视频中相同的事情。 但是我对Api级别有一个问题 所以帮帮我吧。 感染者不知道api级别这是什么,它有多重要 TextureView.SurfaceTextureListener textureListener = new TextureView.SurfaceTextureListener() { @Override public void onSurfaceTe
TextureView.SurfaceTextureListener textureListener = new TextureView.SurfaceTextureListener() {
@Override
public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) {
Toast.makeText(MainActivity.this, "texture is available", Toast.LENGTH_SHORT).show();
}
@Override
public void onSurfaceTextureSizeChanged(SurfaceTexture surface, int width, int height) {
}
@Override
public boolean onSurfaceTextureDestroyed(SurfaceTexture surface) {
return false;
}
@Override
public void onSurfaceTextureUpdated(SurfaceTexture surface) {
}
};
private CameraDevice cameraDevice;
private CameraDevice.StateCallback stateCallback = new CameraDevice.StateCallback() {
@Override
public void onOpened( CameraDevice camera) {
}
@Override
public void onDisconnected( CameraDevice camera) {
}
@Override
public void onError( CameraDevice camera, int error) {
}
}
从camera2 api添加到api级别21。所以你不能使用低于21的android版本
如果您想要分辨率高于~1080p的突发,则需要camera2(当设备支持快速、全分辨率捕获时,请参阅该功能或任何支持硬件级别的设备)
如果您的目标仅是简单的拍摄照片和视频,那么旧的camera API可以正常工作
您可以查看非官方支持库,并根据需要对其进行修改。它支持两种API,根据设备的API级别进行选择
您的senario中有natario1、RedApparat等第三方库您必须将gradle文件中的
minSdkVersion
从19更改为21,然后同步您的项目。请理解@Tommy所说的操作将阻止您在Android v4.4(Kitkat)上运行。要将KitKat保持为最低版本,您需要完全不使用Camera2API,或者仅在版本号足够高的情况下使用它们,如果版本号不够高,则删除该功能。