Reputation: 305
I've been stuck here for hours on what seems like such a trivial issue. My BroadcastReceiver doesn't seem to be receiving an alarm broadcast at all. I can see alarms are being set with "adb shell dumpsys alarm" but my onReceive method never is called.
This is the class:
public class AlarmReceiver extends BroadcastReceiver {
public void AlarmReceiver(){
super();
}
@Override
public void onReceive(Context context, Intent intent) {
Log.i("Alarm:", "Received alarm!");
}
and here is my MainActivity:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
scheduleAlarm();
}
private void scheduleAlarm(){
Intent intent = new Intent(this,AlarmReceiver.class);
final PendingIntent pIntent = PendingIntent.getBroadcast(this,19522,intent,PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarm = (AlarmManager) getSystemService(ALARM_SERVICE);
alarm.setInexactRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 5000, pIntent);
Log.i("Main", "Alarm Scheduled");
}
and my manifest file contains:
<receiver android:name="dt.wirelessproject.AlarmReceiver"></receiver>
Upvotes: 0
Views: 871
Reputation: 9442
Try this...
Your Receiver class constructor is may wrong. Just change your receiver class like this...
public class AlarmReceiver extends BroadcastReceiver {
public AlarmReceiver(){
super();
}
@Override
public void onReceive(Context context, Intent intent) {
Log.i("Alarm:", "Received alarm!");
}
}
Upvotes: 2