我仍然很擅长使用Android,但我认为我的第一个应用程序将是一个简单的手电筒应用程序,用于新的Incredible。不幸的是,它似乎比我原先想象的要困难。
似乎没有办法通过SDK访问LED,至少不是没有一堆奇怪的黑客让手机假装正在拍照。即使这样,我也只能打开LED。它们只有在手机处于待机状态时才会关闭,这样做会破坏所有与相机相关的应用,直到手机重新启动。
所以,我想知道是否可以通过NDK访问LED,或者是否有任何其他与相机相关的API似乎可以做我想要的。
我看过其他手电筒的其他代码,所以看起来这是一个基于硬件的问题。我想我会放弃,因为它看起来似乎不可能,但我想我应该先问一下这个机会,有人知道我不知道的事情。
答案 0 :(得分:1)
在nexus上,您可以通过在/ dev / msm_camera / config0
上执行ioctl()来使用本机代码控制LED在2.1中,您的应用需要root权限,而在2.2中,它可以从操作系统请求“Flashlight”权限。
查看lamppu的代码: http://code.google.com/p/lamppu/source/browse/jni/lamppu.c