वर्तमान में मेरे पास एक गतिविधि है कि जब इसे प्रदर्शित किया जाता है तो अधिसूचना भी अधिसूचना पट्टी में प्रदर्शित हो जाएगी।
ऐसा तब होता है जब उपयोगकर्ता घर पर प्रेस करता है और गतिविधि पृष्ठभूमि पर धकेल दी जाती है, तो वे अधिसूचना के माध्यम से गतिविधि में वापस आ सकते हैं।
समस्या तब आती है जब कोई उपयोगकर्ता बैक बटन दबाता है, तो मेरी गतिविधि नष्ट हो जाती है, लेकिन अधिसूचना बनी रहती है क्योंकि मैं चाहता हूं कि उपयोगकर्ता वापस प्रेस करने में सक्षम हो लेकिन फिर भी अधिसूचना के माध्यम से गतिविधि में सक्षम हो। लेकिन जब कोई USER इसे आज़माता है तो मुझे Null पॉइंटर्स मिलते हैं क्योंकि पुराने को वापस लाने के बजाय एक नई गतिविधि शुरू करने की कोशिश कर रहा है।
इसलिए अनिवार्य रूप से मैं बैक बटन को होम बटन के समान कार्य करना चाहता हूं और यहां बताया गया है कि मैंने अब तक कैसे प्रयास किया है:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (Integer.parseInt(android.os.Build.VERSION.SDK) < 5
&& keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
Log.d("CDA", "onKeyDown Called");
onBackPressed();
}
return super.onKeyDown(keyCode, event);
}
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;
}
हालाँकि उपरोक्त कोड अभी भी मेरी गतिविधि को नष्ट करने की अनुमति देता है, मैं अपनी गतिविधि को नष्ट होने से कैसे रोक सकता हूं जब बैक बटन दबाया जाता है?
, the
<` एक होना चाहिए >
।