Class 需要 API 等级 21(当前最低等级为 19):android.hardware.camera2.CameraDevice.StateCallback
Class requires API level 21 (current min is 19): android.hardware.camera2.CameraDevice.StateCallback
我只想使用纹理视图。
现在我知道纹理视图是什么了,但我在 youtube 上看到了视频,并且和视频中的一样。
但我对 Api 级别有疑问。
所以帮助我。
Infect 不知道 api 级别 这是什么 它有多重要
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) {
}
}
来自 android doc camera2 api 从 api 级别 21 添加。所以你不能使用它 android 版本低于 21
如果您想要以高于 ~1080p 的分辨率连拍,您将需要 camera2(当设备支持快速、全分辨率拍摄时 - 请参阅 BURST_CAPTURE capability, or any device that supports the FULL 硬件级别。)。
如果您的目标只是简单地拍摄照片和视频,旧相机 API 可以正常工作
您可以查看CameraView非官方支持库,并根据需要进行修改。它支持两种 API,根据设备的 API 级别选择
你的 senario 中有 CameraView from natario1, Fotoapparat from RedApparat, camerakit-android 等第 3 方库
我只想使用纹理视图。 现在我知道纹理视图是什么了,但我在 youtube 上看到了视频,并且和视频中的一样。 但我对 Api 级别有疑问。
所以帮助我。 Infect 不知道 api 级别 这是什么 它有多重要
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) {
}
}
来自 android doc camera2 api 从 api 级别 21 添加。所以你不能使用它 android 版本低于 21
如果您想要以高于 ~1080p 的分辨率连拍,您将需要 camera2(当设备支持快速、全分辨率拍摄时 - 请参阅 BURST_CAPTURE capability, or any device that supports the FULL 硬件级别。)。
如果您的目标只是简单地拍摄照片和视频,旧相机 API 可以正常工作
您可以查看CameraView非官方支持库,并根据需要进行修改。它支持两种 API,根据设备的 API 级别选择
你的 senario 中有 CameraView from natario1, Fotoapparat from RedApparat, camerakit-android 等第 3 方库