【发布时间】:2016-04-26 05:32:02
【问题描述】:
在过去的 2 个小时里,我一直试图让我的 android 手电筒闪烁,但我似乎无法让它工作。我想要的只是手电筒每 500 毫秒左右重复闪烁一次,直到我点击一个按钮。
这是我尝试过的,但它什么也没做。它甚至不打开手电筒或产生异常:
private void blinkLight() {
cam = Camera.open();
params = cam.getParameters();
Thread t = new Thread(){
public void run(){
while(userHasntPressedButton){
params.setFlashMode(Camera.Parameters.FLASH_MODE_ON);
try {
currentThread().sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
params.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
}
}
};
t.start();
}
大多数其他帖子建议使用非连续闪烁,或使用与此方法类似的方法,但在处理程序中,但没有一个有效。这是我最接近的尝试。
如何让手电筒闪烁?另外,有没有什么方法可以在没有摄像头许可的情况下做到这一点?
【问题讨论】:
-
你不想在
FLASH_MODE_OFF之后再睡觉,否则它会循环到顶部并立即执行FLASH_MODE_ON- 比眼睛快 -
我认为没有相机许可是不可能的。
-
不调用
camera.startPreview();它不能工作..我假设.. -
并确保您已使用 CAMERA 并且可能添加了 FLASHLIGHT 权限(不确定 FLASHLIGHT,但此权限存在于 Android 中)...
标签: java android arrays string algorithm