Pergunta

Eu preciso ser capaz de agendar várias notificações em momentos diferentes no futuro.

Tentei fazer isso com um alarmanager, mas isso não é adequado, pelo seguinte motivo. De alarmManager.set (): "Se já houver um alarme para essa intenção agendada (com a igualdade de duas intenções sendo definidas pelo FilterEquals (intenção)), ele será removido e substituído por este".

Adivinha o quê, as intenções de envio são Igual, além dos diferentes extras (mas esses não contam para o FilterEquals).

Então, como posso agendar várias notificações, que ainda será mostrado quando meu aplicativo for morto (toda a razão pela qual tentei o AlarmManager)?

Obrigado.

Foi útil?

Solução

Descubra qual evento ocorrerá primeiro, agende que, quando o seu evento os incêndios agende o próximo evento para ocorrer.

Outras dicas

Estou trabalhando no mesmo problema e decidi não usar o AlarmManager. As notificações programadas funcionaram bem em um ambiente de teste, mas, na realidade, os usuários receberam as primeiras notificações e depois pararam como se os alarmes fossem cancelados.

Decidi fazer uso de um serviço que roda a cada 15 minutos e envia notificações para coisas que estão atrasadas. Dessa forma, o processo pelo menos começa novamente se algo acontecer, como se o alarme fosse cancelado por algum motivo, ele não é recriado.

Se você deseja usar vários meios de notificação ... use o código de solicitação diferente para uma notificação de tempo diferente

     notificationManager.notify(request_code_1,notification);
     notificationManager.notify(requestCode_2,notification);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top