Nikhil: I tried all combinations but no joy. I'm sure the AlarmManager is firing b/c it gets set w/ no errors and is almost the same code as in the App, apart from the references to Context required from the BootReceiver. My Receiver is obviously just not able to see the broadcast.
Thanks, Nick Owens VP, ThreeClix Office: (904) 429-7039 Mobile: (847) 565-9392 After Hours: (904) 540-5830 -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of nikhil Sent: Saturday, February 27, 2010 3:22 PM To: Android Developers Subject: [android-developers] Re: AlarmManager Not Firing Receiver alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, (System.currentTimeMillis() + (5 * 1000)), (5 * 60000), pendingIntent); You may try AlarmManager.ELAPSED_REALTIME_WAKEUP and SystemClock.elapsedRealtime() in above line. Hope it works... Nikhil On Feb 27, 1:20 pm, "Nick Owens" <[email protected]> wrote: > Experts: > > Any experts on AlarmManager out there? I've got something weird going on. > > The basic code to set my repeating alarm works fine. I can close my app and > the alarm will continue to run like clockwork every five minutes. It works > fine only if I set it in the app and then close the app. The code is below: > > -------------------------------------------------------------------------- > Intent intent = new Intent(this, AlarmReceiver.class); > Bundle b = new Bundle(); > b.putLong("res_id", res_id); > intent.putExtras(b); > > PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, > 0); > > AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); > alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, > (System.currentTimeMillis() + (5 * 1000)), (5 * 60000), pendingIntent); > > -------------------------------------------------------------------------- > > I've got a registered BootReceiver for re-registering the repeating alarm. > I know it fires on boot b/c the log message clearly shows it is firing and > re-setting the repeating alarm in question for the same frequency. > > But the AlarmManager is not firing. Basically, the nearly identical code > for setRepeating() fires when set from the app and continues to run when the > app is closed, so I know my AlarmReceiver is functioning, but the > AlarmManager is either not broadcasting this alarm or my receiver doesn't > work from an alarm set in the boot receiver. Below is the code for setting > the alarm from the BootReciver: > > -------------------------------------------------------------------------- > > Intent i = new Intent(context, AlarmReceiver.class); > Bundle b = new Bundle(); > b.putLong("res_id", res_id); > i.putExtras(b); > > PendingIntent pendingIntent = PendingIntent.getBroadcast(context, > (int)res_id, i, 0); > > AlarmManager alarmManager = (AlarmManager) > context.getSystemService(Context.ALARM_SERVICE); > alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, > (System.currentTimeMillis() + (5 * 1000)), (5 * 60000), pendingIntent); > > -------------------------------------------------------------------------- > > I read somewhere that the AlarmReceiver definition in the manifest needs an > intent-filter or 2 specified. I don't have any intent-filters, nor would I > know what to put in there. Is that perhaps why? I mean it could make sense > b/c the call to setRepeating from the activity w/in my app would still work > b/c the broadcast has more information about what receiver needs the alarm, > whereas when it's being set from the bootreceiver, the receiver in my > manifest isn't defined well enough to get the broadcast? Here's my manifest > definition for the receiver: > > <receiver android:name=".AlarmReceiver" android:process=":remote" /> > > At the following PDF (Page 25), it suggests a fully-qualified app name > intent-filter: > > http://docs.huihoo.com/google/io/2009/W_0300_CodingforLife-BatteryLif... > .pdf > > Thanks, > Nick Owens > VP, ThreeClix > Office: (904) 429-7039 > Mobile: (847) 565-9392 > After Hours: (904) 540-5830 -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

