[英]Android application Crashing after quit it by pressing “back button”
作為我的Android應用程序開發研究的一部分,我通過訪問LED閃光燈開發了一個簡單的SOS應用程序。 每一件工作都很好,LED以1/2秒的間隔閃爍。 但是當用戶按下手機中的后退按鈕時,應用程序將退出,並在1/2秒后出現“崩潰/強制關閉”消息。 我是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;
}
}
};
可能是因為你沒有取消你的計時器..
試試這個
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if(event.getAction() == KeyEvent.ACTION_DOWN)
{
if( keyCode == KeyEvent.KEYCODE_BACK )
{
mTimer.cancel();
}
}
return super.onKeyDown(keyCode, event);
}
調用purge();
調用cancel();
后的方法cancel();
。 為什么? 調用cancel方法時,計時器停止工作。 但它沒有關閉。 我們必須在應用程序關閉之前手動關閉它,如調用db.close();
在sqlite中。 試試這個。 我認為這只適用於Timer。 我不知道TimerTask。
mTimer.cancel();
mTimer.purge();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.