如何在不停止相机进给的情况下使用闪光灯?
How to use flash without stopping camera feed?
我目前正在开发一个条形码扫描应用程序,该应用程序的大部分流程都使用移动视觉 api。我正在尝试实现一个闪光灯按钮,以便用户可以在弱光下扫描,但由于某种原因,闪光灯的激活会冻结相机画面。在提要处于活动状态时,有什么方法可以通过按钮启动闪光灯吗?要在不干扰其他线程的情况下激活闪存?谢谢!
这真的取决于您使用的相机 api,因为相机很少。
CameraManager 有
void setTorchMode (String cameraId, boolean enabled)
这让您无论相机的当前状态如何都可以操作闪光灯(并且无需重新启动相机),但它也可能被其他应用程序覆盖
我在我的自定义相机中使用了此代码 Application.when 用户单击 FlashOn 按钮然后 Flash 将 start.i 认为此代码会对您有所帮助。
试试这个代码(OnButton Click):
private void btnFlashOnClick() {
if (mCamera != null) {
// First get the Camera Parameters.
Camera.Parameters parameters = mCamera.getParameters();
// set FlashMode to camera parameters.
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
// set Parameters Objects to Camera.
mCamera.setParameters(parameters);
// Finally, Start the Preview Of a Camera
mCamera.startPreview(); // this Line is Usefull for MyApp.If you don't need then Remove this Line.
}
}
此代码在我的应用程序中运行良好..希望这对您有所帮助...(:
我目前正在开发一个条形码扫描应用程序,该应用程序的大部分流程都使用移动视觉 api。我正在尝试实现一个闪光灯按钮,以便用户可以在弱光下扫描,但由于某种原因,闪光灯的激活会冻结相机画面。在提要处于活动状态时,有什么方法可以通过按钮启动闪光灯吗?要在不干扰其他线程的情况下激活闪存?谢谢!
这真的取决于您使用的相机 api,因为相机很少。
CameraManager 有
void setTorchMode (String cameraId, boolean enabled)
这让您无论相机的当前状态如何都可以操作闪光灯(并且无需重新启动相机),但它也可能被其他应用程序覆盖
我在我的自定义相机中使用了此代码 Application.when 用户单击 FlashOn 按钮然后 Flash 将 start.i 认为此代码会对您有所帮助。
试试这个代码(OnButton Click):
private void btnFlashOnClick() {
if (mCamera != null) {
// First get the Camera Parameters.
Camera.Parameters parameters = mCamera.getParameters();
// set FlashMode to camera parameters.
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
// set Parameters Objects to Camera.
mCamera.setParameters(parameters);
// Finally, Start the Preview Of a Camera
mCamera.startPreview(); // this Line is Usefull for MyApp.If you don't need then Remove this Line.
}
}
此代码在我的应用程序中运行良好..希望这对您有所帮助...(: