1
我已经在stackoverflow上搜索并使用使用处理程序和postDelayed消息打开和关闭灯的算法。闪光灯为Android
的算法中运行完美....这里是我做过什么:
if(mActive)//control the runnable thread
{
if(mSwap)//toggler for strobe
{
//Turn Flash On
cam = Camera.open();
Parameters p = cam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.startPreview();
mSwap = false;
mHandler.postDelayed(mRunnable, 1);
}
else
{
//Turn Flash Off
cam.stopPreview();
cam.release();
cam = null;
mSwap = true;
mHandler.postDelayed(mRunnable, 1);
}
}
,但我不能增加开关来匹配那些在市场上的应用程序的频闪......
有没有其他逻辑可以使用(而不是排队消息)? 使用定时器会给出更好的结果吗?
感谢
你试过一个计时器吗?另外,为什么使用相机预览?所有的开放和关闭似乎都有点过分。地狱,你甚至一直在分配一个新的'Camera'对象。 –
是的,我怀疑...重新分配可能需要时间...我可以使用其他相机预览?我只有一次分配相机时遇到问题...它不能执行cam.release后凸轮= Camera.open ...我的凸轮是全球 –
也许这:http://stackoverflow.com/questions/8163012/how-使用相机闪光灯作为火炬可以帮助你。 –