我可以更改安卓设备的 LED 强度吗?



有没有办法设置我想要的LED强度?我知道要打开我使用的 LED:

     p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
     mycam.setParameters(p);

但此代码只是打开 LED。但是有没有办法为LED设置不同的强度以获得更强的光或降低光强度?

HTC有一个支持此功能的替代API,但是它仅在HTC Sense设备上,并且从Gingerbread开始,他们已经更改了权限,因此它仅适用于他们的Flashlight应用程序,而不是第三方应用程序(除非您使用root)。

但是在 2.2 HTC 设备上,您可以通过编写字符串来使用它 /sys/devices/platform/flashlight.0/leds/flashlight/brightness .这将控制 LED 是否亮起以及亮度。对于最大亮度写入"128n",一半亮度写入"64n"。易于从 adb 外壳进行测试:

echo "128" > /sys/devices/platform/flashlight.0/leds/flashlight/brightness

最后通过在那里写"0n"来关闭它。

简短的回答是:不。
更长的答案 - 也许在某些使用非文档调用/参数的设备上。支持的闪光模式及其含义(和行为)因设备而异。

最好的选择是查询支持的闪光模式,并希望它们按预期工作。

尝试为相机参数设置不同的闪光模式。

* FLASH_MODE_OFF
* FLASH_MODE_AUTO
* FLASH_MODE_ON
* FLASH_MODE_RED_EYE
* FLASH_MODE_TORCH

您可以使用 setFlashMode() 方法设置闪存模式。

这只是为了相机背光。 但是如果你想改变完整的屏幕强度。 请看这里的例子。

尝试查找此函数的代码:

private native final void native_setParameters(String params);

我相信当你浏览它时,你会发现这是否可能。

public,似乎不可能

我已经在我的三星Galaxy S3 Mini中尝试过这个。我没有在其他设备上尝试过。

每当我这样做时(当 LED 亮起时):

public void changeIntensity()
{
    cam.stopPreview();
    cam.startPreview();
}

LED 在 3 个强度级别之间旋转。这毫无意义,但它有效。

相关内容

  • 没有找到相关文章

最新更新