내 안드로이드 응용 프로그램 개발 연구의 일환으로 LED 플래시 라이트에 액세스하여 간단한 SOS 응용 프로그램을 개발했습니다. 모든 것이 잘 작동하고 1/2 초 간격으로 LED가 깜박입니다. 그러나 사용자가 전화에서 뒤로 버튼을 누르면 응용 프로그램이 종료되고 1/2 초 후에 "충돌/강제 종료"메시지가 나타납니다. 나는 안드로이드 개발에 대한 멍청한 행동이며 내 코드에 무슨 문제가 있나? u는 당신의 타이머를 취소하지 않았기 때문에Android 응용 프로그램 "뒤로 버튼"을 눌러 종료합니다.
private boolean lOn=true;
Timer mTimer = new Timer();
TimerTask mTimerTask = new TimerTask() {
@Override
public void run() {
if(lOn){
final Parameters p = camera.getParameters();
Log.i("info", "torch is turn Off!");
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
lOn=false;
}
else {
final Parameters p = camera.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(p);
camera.stopPreview();
isLighOn = false;
lOn=true;
}
}
};
stacktrace !!!!!! – smk
나중에 참조 할 수 있도록, 명령 행에서'adb logcat'을 실행하거나 Eclipse에서 Debug 퍼스펙티브를 사용하여 찾을 수있는 stacktrace를 게시하십시오. –