4
respostas

[DUVIDA]

Boa tarde, estou precisando que meu aplicativo android, mande um recado para o usuario as tal horas do dia, teria como?

Por exemplo as 15:00 da tarde, o meu aplicativo mandar um (aviso) para o usuario que precise por exemplo de tomar agua, alguem me da um caminho? aqui na alura existe algum curso que aborda esse tipo de assuto?

4 respostas

Oi Michel, tudo bem? Não temos um curso específico para este cenário.

Sobre o recado para o usuário, seria algum tipo de notificação? Se sim, confira esta página da documentação que indica como é possível criar uma notificação.

Eu ainda não fiz esse tipo de implementação para agendar uma rotina em um determinado momento, mas olhando na documentação acredito que o AlarmManager seria um ponto de partida. Nesta página indica um 'tutorial' de como seria a configuração de agendamento.

[]s

Alex tudo bem? eu li uns post aqui da alura, se não me engano até mesmo era os seus mesmo, usando firebase, usando esse serviço consegui mandar notificação.

A notificação está vindo atras desse metodo.

@Override
    public void onMessageReceived (RemoteMessage remoteMessage) {
        super.onMessageReceived (remoteMessage);
        Log.d("remote", remoteMessage.getNotification().getTitle());
        Intent intent = new Intent(this, MenuActivity.class);
        RemoteMessage.Notification notification = remoteMessage.getNotification();
        String title = notification.getTitle();
            intent.putExtra(String.valueOf(1), String.valueOf(1));
            startActivity(intent);
    }

Porem esse método só é ativado quando o meu aplicativo esta em primeiro plano, se ele estiver fechado chega a notificação mais não entra nesse metodo, porque queria recuperar essa notificação atraves do titulo que passo lá no meu firebase gostaria de mudar as intent, porque tenho varias notificação, quando a aplicação está aberta vai tudo normal, já quando a aplicação esta fechada ou em segundo plano já não entra...

Teria alguma forma de eu conseguir recuperar essa notificação quando o usuario clicar na notificação do celular? Exisite algum metodo para sobresscrever? Eu li a documentação e não achei nada parecido.

Opa Michel, blz?

Para as mensagens em segundo plano, vai precisar fazer o tratamento manual da apresentação da notificação, eu tinha escrito um artigo sobre, mas acho que ele está desatualizado com a forma que o FCM é atualmente, talvez esse documento indique com mais precisão caso alguma coisa foi ajustada.

[]s

Opa fala Alex tudo beleza? Sim eu ja tinha lido esse artigo seu também, na verdade esse artigo no meu caso não foi util, mais o outro seu foi, sim está desatualizado mais da pra ter um bom caminho para sincronizar seu app com o firebase, na verdade só tive que trocar umas versões de dependecias, e também a class que estendemos está obsoleto, ai tive que usar a seguinte

FirebaseMessagingService

mais ai só foi adicionar os metodos necessarios para fazer receber o token.

Então estava chegando a notificação para mim, quando meu app tava em background só que eu queria que quando o usuario clicasse na notificação eu pudesse tratar para saber qual notificação que estamos recuperando,

Claro no método

@Override public void onMessageReceived(RemoteMessage remoteMessage) { }

É possivel fazer isso, mais aqui só ira cair se o aplicação estiver em foreground então pra mim não servia também,

Ai olhando a documenteção e foruns vi que a mensagem é chegada na raiz do projeto, ai pode recuperar ela através da intent, na parte de enviar a mensagem do firebase tem uma opção de key e valor, la eu atribui a minha key com o valor e atraves dessa key eu pude fazer o tratamento quando o usuario clicasse na notificação atraves da intent,

if(getIntent().getExtras() != null) {
            for (String key : getIntent().getExtras().keySet()) {
                if (key.equals("Cardapio")) {
                    value = getIntent().getExtras().get(key);
                }
            }
            Log.d("menuteste", value.toString());
        }

ai foi só correr pro abraço kkkk, muito bom essa integração com firebase, pelo menos na parte de mensagem pra mim na parte de notificação meu salvou de mais.

Muito obrigado pela atenção, forte abraço.