Я создаю приложение, которое напоминает пользователю о непрочитанных сообщениях. Моя проблема в том, что после того, как пользователь удаляет его из списка последних использованных приложений, мой широковещательный приемник и диспетчер сигналов тревоги не работают. Есть ли решение этой проблемы?
Я читал, что добавление ' android:process=":remote" 'в манифест приемника может помочь, но это не так. Приложение «к сожалению закрыто» после получения сообщения, когда эта строка находится в манифесте.
Интересно, как работают такие приложения, как Messenger или Mail? Они должны уведомлять пользователя, когда сообщение получено, и они удаляются пользователями, как и другие приложения.
Вот как я устанавливаю будильник:
Intent i = new Intent(MainActivity.mContext,AlarmReceiver.class);
i.putExtra("number",numerNadawcy);
i.putExtra("hour",h);
i.putExtra("minute",m);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent alarmIntent = PendingIntent.getBroadcast(MainActivity.mContext, 123, i, 0);
AlarmManager alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
if(Build.VERSION.SDK_INT>=19)
{
alarmMgr.setExact(AlarmManager.RTC_WAKEUP,System.currentTimeMillis()+h*60*60*1000+m*60*1000,alarmIntent);
}
else
{
alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),h*60*60*1000+m*60*1000, alarmIntent);
}