मैं एक ऐसा इरादा प्रसारित कर रहा हूं जो प्रसारण रिसीवर द्वारा प्राप्त किया जाएगा, क्योंकि आवेदन अभी भी चल रहा है और अलार्म सेवा द्वारा नया इरादा निकाल दिया गया है लेकिन रिसीवर पिछले इरादे दिखा रहा है मूल्य। दस्तावेज़ों के अनुसार रिसीवर रिसीवर() पर लौटने के बाद सक्रिय नहीं है, इसलिए रिसीवर को अगले इरादे मान दिखाना चाहिए जो अलार्म सेवा द्वारा निकाल दिया गया है, लेकिन ऐसा नहीं हो रहा है, क्या कोई भी सही दृष्टिकोण बता सकता है।रिसीवर प्रसारित करने के नए इरादे को पिछले इरादे से अतिरिक्त मूल्य
इस आशय का प्रसारण करने गतिविधि से है:
Intent intent = new Intent(SCH_ALARM_ACTION);
intent.setClass(getBaseContext(), SchAlarmReciever.class);
intent.putExtra("id", maxId);
PendingIntent pi = PendingIntent.getBroadcast(getBaseContext(),
0,
intent,
0);
alarmManager.set(AlarmManager.RTC, gc.getTimeInMillis(), pi);
यह वह जगह है broadreceiver:
@Override
public void onReceive(Context context, Intent data)
{
// TODO Auto-generated method stub
if(data.getAction().equals(SchedulerActivity.SCH_ALARM_ACTION)){
int id = data.getIntExtra("id",0);
Toast.makeText(context, "in receiver "+String.valueOf(id), Toast.LENGTH_LONG).show();
}
यहाँ
टोस्ट आईडी जो alarmservice से पहला प्रसारण द्वारा भेजा जाता है, तब भी जब दूसरा आशय alarmservice से निकाल दिया जाता है पता चलता (दूसरी बार अलार्म बंद हो जाता है)
क्या आप एक कोड स्निपेट पोस्ट कर सकते हैं? –
मैं यहां कुछ ऐसा कर रहा हूं !!! http://stackoverflow.com/questions/14571564/android-pendingintent-extras-not-received-by-broadcastreceiver/14612215#14612215 – toobsco42