gpt4 book ai didi

android - 设置 Parameters.FLASH_MODE_TORCH 在 Droid X 2.3 上不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:32 25 4
gpt4 key购买 nike

我正在编写一个将闪光灯模式设置为手电筒的应用程序。我一直在我的 Droid X 上测试应用程序,但 LED 灯不亮。我在 Droid Incredible 上试过,效果很好。我不知道是什么问题。这是我打开手电筒模式的部分代码。

    Camera mCamera = Camera.open();
Camera.Parameters params = mCamera.getParameters();
if(params.getFlashMode() != null){
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
}
mCamera.setParameters(params);

我添加了 mCamera.startPreview();因为我读到应该有所作为,但事实并非如此。我还列出了可用的闪光灯模式并将它们显示在屏幕上,以确保我的 Droid X 确实具有手电筒模式,并且它在列表中。我什至根据我在网上找到的代码创建了一个新的应用程序,它可以通过一个按钮打开和关闭 LED 闪光灯。它再次在 Droid Incredible 上运行良好,但在 Droid X 上运行良好。我是否缺少某些东西才能让它在 Droid X 上运行,或者它可能是 Gingerbread 的东西? Droid X 正在运行 Gingerbread,而 Droid Incredible 正在运行 FroYo。

最佳答案

设置 FLASH_MODE_TORCH 时有很多怪癖。

通常您需要启动相机预览:

Camera mCamera = Camera.open();
mCamera.startPreview();
Camera.Parameters params = mCamera.getParameters();
if(params.getFlashMode() != null){
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
}
mCamera.setParameters(params);

这可能会在某些手机上解决它,其他手机也需要将预览绘制到 SurfaceView。这可以通过在您的 Activity 中实现 SurfaceHolder.Callback 接口(interface)来完成。查看示例 here .

关于android - 设置 Parameters.FLASH_MODE_TORCH 在 Droid X 2.3 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6881004/

25 4 0