BroadcastReceiver nach API Update (API 19) funktioniert nicht mehr

  • Antworten:2
  • Bentwortet
Rolf Baumann
  • Forum-Beiträge: 24

08.09.2015, 16:21:25 via Website

Folgender Code für den BroadcastReceiver hat immer funktioniert, nach einem Update auf API 19 im Android SDK Manager bei Eclipse jedoch plötzlich nicht mehr:

public void alarmset(int kont){
    Log.d(TAG, "Kontroll: " + kont);
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.SECOND, kont);
    AlarmManager alarmMgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
    Intent intentalarm = new Intent(this, OnAlarmReceive.class);
    PendingIntent alarmIntent = PendingIntent.getBroadcast(this, 0, intentalarm, PendingIntent.FLAG_CANCEL_CURRENT);
    alarmMgr.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), alarmIntent);
    if (alarmMgr!= null) {
        Log.d(TAG, "Alarm set: " + alarmMgr);
    }
}
public class OnAlarmReceive extends BroadcastReceiver {
      @Override
      public void onReceive(Context context, Intent intent) {             
            Log.d(TAG, "Alarm ausgelöst");
            Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
            Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);
            r.play();
            Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
            vibrator.vibrate(2000);
      }  
}

Im Manifest ist der Receiver registriert:

      </activity>
    <receiver android:name=".OnAlarmReceive"  />
</application>

import android.content.BroadcastReceiver; habe ich gelöscht und wieder neu eingefügt, aber auch ohne Erfolg;

Ich bin dankbar für jeden Hinweis.

Antworten
Rolf Baumann
  • Forum-Beiträge: 24

08.09.2015, 20:38:20 via Website

Ich habe den Fehler entdeckt: Manifest war falsch (richtig:

<receiver android:name="de.HalloBsp.HalloBspActivity$OnAlarmReceive"  />;) 

und die Klasse onAlarmReceive sollte statisch sein.

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

09.09.2015, 18:29:35 via App

Hallo Rolf,
Schön das das Problem gelöst ist :)

Bitte setze deinen Thread noch auf Beantwortet, indem du im Browser über deinem ersten Post auf "Mehr"->"Beantwortet" klickst.

Danke (smug)

— geändert am 09.09.2015, 18:30:03

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten