我目前正在开发条形码扫描应用程序,该应用程序使用移动视觉API进行大多数过程。我正在尝试实现一个闪光按钮,以便用户可以在低光下扫描,但由于某种原因,闪光灯的激活会冻结相机进纸。在Feed处于活动状态时,是否有某种方法可以通过按钮启动闪光灯?要在不干扰其他线程的情况下激活闪存?谢谢!
答案 0 :(得分:0)
这真的取决于你使用的相机api,因为很少。
CameraManager有
void setTorchMode (String cameraId, boolean enabled)
无论摄像机的当前状态如何,都可以让你操作闪光灯(无需重新启动),但也可以被其他应用程序覆盖
答案 1 :(得分:0)
我在自定义相机应用程序中使用了此代码。当用户单击FlashOn按钮时,Flash将启动。我认为此代码对您有所帮助。
试试这段代码(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.
}
}
这段代码在我的应用程序中工作正常。希望这会对你有所帮助......(: