[英]CWAC - do not capture image when flash mode is ON on s5
I am using CWAC camera lib to capture images. 我正在使用CWAC相机库捕获图像。 Camera does not capture image when flash mode set as ON setFlashMode(Parameters.FLASH_MODE_ON);
闪光灯模式设置为ON时,相机不捕获图像setFlashMode(Parameters.FLASH_MODE_ON);
on s5. 在s5。
I have also tried this using demo provided with library.Just flash appears and nothing happens. 我也使用库提供的演示来尝试了此操作。 For subsequent capture action it throws exception,the stack trace is using demo : 对于随后的捕获操作,它将引发异常,堆栈跟踪正在使用demo:
3-25 16:11:23.058 23419-23419/com.commonsware.cwac.camera.demo E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.commonsware.cwac.camera.demo, PID: 23419
java.lang.IllegalStateException: Preview mode must have started before you can take a picture
at com.commonsware.cwac.camera.CameraView.takePicture(CameraView.java:331)
at com.commonsware.cwac.camera.CameraFragment.takePicture(CameraFragment.java:162)
at com.commonsware.cwac.camera.demo.DemoCameraFragment.takeSimplePicture(DemoCameraFragment.java:242)
at com.commonsware.cwac.camera.demo.DemoCameraFragment.onOptionsItemSelected(DemoCameraFragment.java:129)
at android.app.Fragment.performOptionsItemSelected(Fragment.java:1806)
at android.app.FragmentManagerImpl.dispatchOptionsItemSelected(FragmentManager.java:1978)
at android.app.Activity.onMenuItemSelected(Activity.java:2711)
at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:1094)
at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735)
at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:152)
at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874)
at com.android.internal.view.menu.ActionMenuView.invokeItem(ActionMenuView.java:645)
at com.android.internal.view.menu.ActionMenuItemView.onClick(ActionMenuItemView.java:210)
at android.view.View.performClick(View.java:4637)
at android.view.View$PerformClick.run(View.java:19422)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5586)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
at dalvik.system.NativeStart.main(Native Method)
How can be solved this issue? 如何解决这个问题?
onPictureTaken(byte[] data, Camera camera)
of PictureTransactionCallback
does not get invoked in this case. 在这种情况下,不会调用PictureTransactionCallback
。
Device : Samsung Galaxy S5, android 4.4.2 设备:三星Galaxy S5,Android 4.4.2
Thanks :-) 谢谢 :-)
It also happened to me. 这也发生在我身上。 The reason why is because I have provided a SimpleCameraHost which overrides the method useSingleShotMode which returns always true. 原因是因为我提供了一个SimpleCameraHost,它覆盖了方法useSingleShotMode,该方法始终返回true。
I just return it as false then I don´t see this problem again. 我只是将其返回为false,然后就再也看不到这个问题了。
@Override
public boolean useSingleShotMode() {
return false;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.