2014-04-21 68 views
-1

onBackPed按鈕我的應用程序沒有正確關閉。它再次在後臺註冊我的申請。它無法正常關閉,從background.please告訴我,我怎麼能正常關閉onBackPed按鈕我的應用程序沒有正確關閉?

public void onBackPressed() { 

    AlertDialog.Builder builder = new AlertDialog.Builder(this); 
    builder.setMessage("Do you want to exit from application ?"); 

    builder.setPositiveButton("YES", new DialogInterface.OnClickListener() { 

     public void onClick(DialogInterface dialog, int which) { 



prefProviderWrapper.setPreferenceBooleanValue(PreferencesWrapper.HAS_BEEN_QUIT, true); 
    moveTaskToBack (false); 
Context context= getApplicationContext(); 
Communicator comm= new Communicator(context); 
Activity app=getParent(); 
comm.CloseApplication(app); 
    finish(); 


} 
}); 
+1

當您按下後退按鈕時會發生什麼? – Riser

+0

它再次註冊並在通知 – user3555619

+0

顯示消息註冊表示實際發生了什麼? – Riser

回答

1

設置launchmode ="singleTask"清單文件,爲您的活動,並調用YourActvity.this.finish()System.exit(0)onBackPressed()

+0

我們可以給單個任務模式分段嗎..? – GvSharma

+0

我嘗試但沒有工作 – user3555619

0

使用此按鈕後退按鈕

@Override 
public void onBackPressed() { 
    Log.d("CDA", "onBackPressed Called"); 
    Intent setIntent = new Intent(Intent.ACTION_MAIN); 
    setIntent.addCategory(Intent.CATEGORY_HOME); 
    setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(setIntent); 
    return; 
} 
+0

你可以說FLAG_ACTIVITY_NEW_TASK和將活動的啓動模式設置爲singleTask ..之間的區別嗎? – GvSharma

+0

FLAG_ACTIVITY_NEW_TASK產生與「singleTask」launchMode相同的行爲,如果已有與新活動具有相同親和力的現有任務,則該活動將啓動到該任務中。如果不是,它開始一個新的任務。 – Amardeepvijay

相關問題