जबकि इस प्रश्न लिखने हल आपूर्ति की है, लेकिन इस मामले में पोस्टिंग यह मदद करता है किसी को भी:एकाधिक कॉल एक ही आशय/PendingIntent अतिरिक्त मान देने, लेकिन मैं अलग-अलग
मैं इस तरह एकाधिक अलार्म सेट कर रहा हूं,
AlarmManager alarms = (AlarmManager)context.getSystemService(
Context.ALARM_SERVICE);
Intent i = new Intent(MyReceiver.ACTION_ALARM); // "com.example.ALARM"
i.putExtra(MyReceiver.EXTRA_ID, id); // "com.example.ID", 2
PendingIntent p = PendingIntent.getBroadcast(context, 0, i, 0);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, nextMillis, 300000, p); // 5 mins
... और इस तरह से उन्हें प्राप्त करने:
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION_ALARM)) {
// It's time to sound/show an alarm
final long id = intent.getLongExtra(EXTRA_ID, -1);
अलार्म मेरी रिसीवर एक के लिए दिया जाता id
के विभिन्न मूल्यों के साथ सही समय पर नहीं, लेकिन अक्सर के साथ गलत मूल्य पर सेट किया जाता है: यह एक मूल्य है जिसे मैंने किसी बिंदु पर उपयोग किया है, सिर्फ उस समय नहीं जिसे मैं उस विशेष समय पर वितरित करना चाहता था।
बस सोच रहा है, अगर मैं एक नए प्रयोग है इरादा i = नया इरादा (संदर्भ, सीएलएस) के साथ इरादा; क्या मेरे पास यह मिश्रित आईडी समस्या है? मेरे मामले में, सीएल अलग अलार्म के लिए अलग है। यह ठीक होना चाहिए, है ना? – Safecoder
मैं वर्तमान में एक्स्ट्रा के बारे में बिंदु देखने के लिए पहले देखे गए सटीक स्थान को नहीं ढूंढ सकता, लेकिन हां, एक अलग वर्ग के साथ यह एक पूरी तरह से अलग इरादा है इसलिए मैं काम करने की अपेक्षा करता हूं। –
@ क्रिसबॉयले, बहुत बहुत धन्यवाद। लेकिन मेरे मामले में, यह काम नहीं करता है। हालांकि यह काम करता है: 'इरादा इरादा = नया इरादा (शून्य, Uri.parse (Long.toString (आईडी)), संदर्भ, AlarmActivity.class); '। ध्यान दें कि मैं गतिविधि का उपयोग कर सकता हूं। –