我正在使用定时警报(正常工作)尝试运行代码,以便在关闭和开启位置之间快速切换相机闪光LED。
我正在尝试使用处理程序在两种模式之间切换,但似乎无法让它运行。 我想知道是否有人可以建议另一种方法来选择相机LED,或者他们是否可能试图找到我的代码有问题。
帮助将不胜感激,我是Android编程的新手。
以下是代码:
import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.os.Handler;
public class MyAlert extends Activity {
private Handler mHander = new Handler();
private boolean mActive = false;
private boolean mSwap = true;
private Camera camera;
final Parameters p = camera.getParameters();
private final Runnable mRunnable = new Runnable() {
public void run() {
if (mActive) {
if (mSwap) {
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera = Camera.open();
camera.setParameters(p);
camera.startPreview();
mSwap = false;
mHander.postDelayed(mRunnable, 20);
} else {
p.setFlashMode(Parameters.FLASH_MODE_OFF);
camera = Camera.open();
camera.setParameters(p);
camera.stopPreview();
mSwap = true;
mHander.postDelayed(mRunnable, 100);
}
}
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startStrobe();
}
private void startStrobe() {
mActive = true;
mHander.post(mRunnable);
}
};
答案 0 :(得分:0)
AFAIR,停止预览并释放相机足以关闭闪光灯。但真正的问题是设备的行为方式不同而且并不总是如宣传的那样。