protected void displayNotification(String response) {
Intent intent = new Intent(context, testActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
Notification notification = new Notification(R.drawable.icon, "Upload Started", System.currentTimeMillis());
notification.setLatestEventInfo(context, "Upload", response, pendingIntent);
nManager.notify((int)System.currentTimeMillis(), notification);
}
यह फ़ंक्शन कई बार कहा जाएगा। मैं प्रत्येक notification
के लिए गवाही देना चाहूंगा जब क्लिक किया जाए। दुर्भाग्य से, केवल पहली अधिसूचना में परीक्षणशीलता की शुरूआत हुई। बाकी पर क्लिक करने से अधिसूचना विंडो कम से कम हो जाती है।
अतिरिक्त जानकारी: फ़ंक्शन displayNotification()
नामक एक वर्ग में है UploadManager
। उस तात्कालिकता से Context
पारित किया UploadManager
गया activity
है। फ़ंक्शन displayNotification()
को फ़ंक्शन से कई बार कहा जाता है, यह भी UploadManager में है, जो एक में चल रहा है AsyncTask
।
संपादन 1: मैं यह उल्लेख करना भूल गया कि मैं स्ट्रिंग प्रतिक्रिया Intent intent
को एक के रूप में पारित कर रहा हूं extra
।
protected void displayNotification(String response) {
Intent intent = new Intent(context, testActivity.class);
intent.putExtra("response", response);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
इससे एक बड़ा अंतर पड़ता है क्योंकि मुझे स्ट्रिंग "प्रतिक्रिया" को प्रतिबिंबित करने के लिए अतिरिक्त "प्रतिक्रिया" की आवश्यकता है, जब अधिसूचना बनाई गई थी। इसके बजाय, उपयोग करते हुए PendingIntent.FLAG_UPDATE_CURRENT
, अतिरिक्त "प्रतिक्रिया" दर्शाता है कि स्ट्रिंग कॉल अंतिम प्रतिक्रिया किस पर थी displayNotification()
।
मुझे पता है कि यह दस्तावेज़ीकरण को पढ़ने से क्यों है FLAG_UPDATE_CURRENT
। हालांकि, मुझे यकीन नहीं है कि इस समय इसके आसपास कैसे काम किया जाए।