Android 4 - 自动对焦后相机白平衡停止

s.k*_*ger 6 camera android autofocus

在我当前的应用程序中,我有一个类,它持有一个Camera对象的实例,并尝试执行以下操作:

1)等待指定的时间,例如没有(这是通过TimerTask完成的)2)请求通过autoFocus进行聚焦3)在autoFocus回调中,请求OneShotPreviewCallback 4)在预览回调中,保存图像5)重复

虽然白平衡在第一次自动对焦之前工作正常,但在第一次聚焦完成后它会停止.好吧,当然我查找了API,并且autoFocus描述中有一个有趣的声明.

但自动对焦程序可能会在对焦过程中暂时停止自动曝光和自动白平衡.

但它似乎只是暂时停止,而是永久停止.有趣的是,随后调用autoFocus,相机会尝试再次调整白化,但正确的值主要是仅使用第二个或第三个自动聚焦.

我还尝试在代码中设置白平衡,但它没有改变任何东西.

setWhiteBalance(Camera.Parameters.WHITE_BALANCE_AUTO);
Run Code Online (Sandbox Code Playgroud)

有没有人知道这个问题,还是我错过了一些观点?我知道我可以永久调用autoFocus强制白平衡,但这对我来说似乎不是最佳方式,因为在第一次调用auf autoFocus之前,它工作得很好.

PS:我正在使用Android 4.0.3在三星Galaxy S2上进行测试.

DoD*_*oDo 1

我在三星 Galaxy Ace 上也遇到了类似的问题 - 第一次自动对焦后,相机白平衡会关闭并且不会再次打开,无论我之后进行多少次自动对焦。

由于没有API方法告诉相机恢复白平衡,并且在自动对焦回调中重置相机参数也不起作用,我的猜测是这是三星手机相机驱动程序中的一个错误 - 我已经尝试过我的应用程序对于不同的手机,仅在这款 Samsung Galaxy Ace(GT-S5830;更新至 Android 2.3.3)上,自动对焦后相机白平衡无法恢复。

也许我们应该在developer.samsung.com 上发布错误通知单?