闪光灯(照相机)
技术点:
①打开关闭闪光灯
技术点:
①打开关闭闪光灯
②按两次后退键退出应用
打开关闭闪光灯 /**
* 打开闪光灯
*/
private void openFlashLight() {
if (!isOpen) {//闪光灯处于关闭状态
if (camera==null) {
camera=Camera.open();
}
camera.startPreview();
Parameters parameters = camera.getParameters();
parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters);
isOpen = true;
}
}
/**
* 关闭闪光灯
*/
private void closeFlashLight() {
if (isOpen) {//闪光灯已经打开
if (camera != null) {
Parameters parameters = camera.getParameters();
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(parameters);
camera.release();
camera = null;
}
isOpen = false;
}
}
|
按两次后退键退出应用 //按键触发
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode==KeyEvent.KEYCODE_BACK) {//后退键
if (firstPressed) {
long secondTime = System.currentTimeMillis();
if (secondTime-firstPressedTime<1000) {//1秒内,认为是按了两下后退键,退出程序
int pid = Process.myPid();
android.os.Process.killProcess(pid);
return true;
}else {//如果时间过长,将第一次按下时间和是否按下置为默认
firstPressedTime = System.currentTimeMillis();
}
}else {
firstPressedTime = System.currentTimeMillis();
}
Toast.makeText(getApplicationContext(), "请再次按下后退键退出应用", Toast.LENGTH_SHORT).show();
firstPressed = true;
return true;
}
return super.onKeyDown(keyCode, event);
}
|
效果: |