Android 相机服务连接失败,android – 相机错误“无法连接到相机”或某些手机中出现错误“相机正在使用其他应用”...
即使我有同样的问题.一旦应用程序正在使用相机资源,直到它被释放,您可以在其他应用程序甚至服务中使用它们.如果任何服务正在使用相机资源,直到它发布相同,我们不能使用相机硬件.如果使用此代码正在使用相机硬件,您可以重复检查: –private boolean isCameraInUse() {Log.v(TAG, "isCameraInUse()");boolean isCameraInUse = f
即使我有同样的问题.
一旦应用程序正在使用相机资源,直到它被释放,您可以在其他应用程序甚至服务中使用它们.
如果任何服务正在使用相机资源,直到它发布相同,我们不能使用相机硬件.
如果使用此代码正在使用相机硬件,您可以重复检查: –
private boolean isCameraInUse() {
Log.v(TAG, "isCameraInUse()");
boolean isCameraInUse = false;
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M)//Use Camera Api for Version Code < 23 and mCamera manager above it.
{
String cameraId = null;
CameraManager camManager = (CameraManager) mContext.getSystemService(Context.CAMERA_SERVICE);
// Usually front mCamera is at 0 position.
try {
cameraId = camManager.getCameraIdList()[0];
} catch (CameraAccessException e) {
Log.e(TAG, Log.getStackTraceString(e));
isCameraInUse = true;
}
try {
camManager.setTorchMode(cameraId, true);
camManager.setTorchMode(cameraId, false);
} catch (CameraAccessException e) {
Log.e(TAG, Log.getStackTraceString(e));
isCameraInUse = true;
}
} else {
Camera c = null;
try {
c = Camera.open();
} catch (RuntimeException e) {
Log.e(TAG, Log.getStackTraceString(e));
turnFlashOff(mContext);
isCameraInUse = true;
} finally {
if (c != null) c.release();
}
}
return isCameraInUse;
}
更多推荐
所有评论(0)