2013-08-11 4 views
0

... и у меня все еще нет идеи, что не так. Надеюсь, кто-то может мне помочь, я не очень хорошо разбираюсь в Android.Получатель не реагирует на будильник в Android

Это мой Alarm Service, определенный в Reporter.java:

alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE); 
Intent alarmIntent = new Intent(getBaseContext(), Reporter.MyReceiver.class); 
PendingIntent pendingAlarmIntent = PendingIntent.getBroadcast(getBaseContext(), 0, alarmIntent, 0); 
alarmMgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 1*1000, 1*30*1000, pendingAlarmIntent); 

Это мой внутренний прием Класс:

public class MyReceiver extends BroadcastReceiver{ 

public MyReceiver(){ 
    super(); 
} 

public void onReceive(Context context, Intent intent) { 
    Log.e("log_cat","Alarm empfangen"); 
    new GetControls(); 
} 

}

И это то, что я добавил к Манифест:

  <receiver android:name="de.sonderfarben.tmc_reporter3.Reporter$MyReceiver" android:process=":remote"/> 

thanx !!

ответ

0

Это потому, что вы указали время в прошлом. Если вы хотите, чтобы ваше событие произошло через одну секунду, с сигналом ELAPSED_REALTIME_WAKEUP, используйте SystemClock.elapsedRealtime()+1000, а не 1*1000.


UPDATE

Кроме того, вы не можете использовать обычный внутренний класс. Вы можете использовать внутренний класс static или отдельный публичный класс. Регулярные внутренние классы могут быть созданы только экземпляром внешнего класса; Android не имеет одного из них.

+0

Возможно, это была одна ошибка. – Sonderfarben

+0

i get: не удалось создать приемник [...] без пустого конструктора. Но есть один :-( – Sonderfarben

+0

@Sonderfarben: См. Обновление. – CommonsWare

Смежные вопросы