В моем коде у меня есть приемник вещания
<receiver
android:name=".alarm.AlarmReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.TIME_SET" />
</intent-filter>
<intent-filter>
<action android:name="com.BalDroid.YekNegah.alarm.dailyAction"
/>
</intent-filter>
</receiver>
Я планирую тревогу в этом приемнике в методе onReceive
PendingIntent pi = PendingIntent.getBroadcast(context, AlarmRow.getId(mycursor), i, PendingIntent.FLAG_UPDATE_CURRENT);
if (Build.VERSION.SDK_INT >= 21) {
AlarmManager.AlarmClockInfo alarmInfo = new AlarmManager.AlarmClockInfo(
mycal.getTimeInMillis(),pi);
mgr.setAlarmClock(alarmInfo,pi);
// Create a Pending intent to show Alarm Details
}
хотя приемник работает, но тревога не срабатывает с mgr.setAlarmClock
. Но когда я использую
mgr.setExactAndAllowWhileIdle
тревожный триггер
(из-за точности setAlarmClock
я должен использовать setAlarmClock
в своем коде)
И когда я планирую mgr.setAlarmClock
из MainActivity (при запуске приложения вручную), он работает.
Я не могу найти решение !!.
(Я не знаю, почему не работает от приемника).