Post: Intents – Enviando E-mail pelo aplicativo no Android

Alessandro Medeiros

Fala ai Radizeiros e Radizeiras, tudo bem com vocês?

Já tentou conectar outros aplicativos Android com o Delphi?

Como por exemplo, enviar um e-mail através do seu aplicativo, ou até mesmo abrir algum aplicativo instalado no Smartphone.

Neste post irei lhe mostrar como é simples trabalhar com Intents no Android.

Essa conexão é baseada em uma descrição de tarefa representada por um objeto Intent.

A Intent é um objeto de mensagem que pode ser usado para solicitar uma ação de outro componente de aplicativo solicitando funcionalidades de outros componentes do Android. Intents permitem que você interaja com componentes dos mesmos aplicativos, bem como com componentes contribuídos por outros aplicativos. Por exemplo, uma atividade pode iniciar uma atividade externa para mandar e-mail.

No Android, a reutilização de outros componentes de aplicativos é um conceito conhecido como tarefa. Um aplicativo pode acessar outros componentes do Android para realizar uma tarefa. Por exemplo, de um componente do seu aplicativo, você pode acionar outro componente no sistema Android, que gerencia e-mail, mesmo que esse componente não faça parte do seu aplicativo.

Por falar em Intents no Android, não podemos deixar de visualizar a documentação do Google sobre os Intents: https://developer.android.com/guide/components/intents-common?hl=pt-BR

Tudo que você precisar fazer em seu aplicativo você encontra nessa documentação.

Irei mostrar como criar um Intents para envio de e-mail, seguindo o que a documentação do Google nos mostra, seguindo o passo a passo dele para que você possa fazer a integração, seja ela qual for, dentro do seu app.

Nesse nosso projeto já temos as chamadas para Wathsapp, iremos colocar um botão e alinhar ao buttom, e alteramos o texto dele para E-mail, é nele que iremos enviar e-mail usando o intents do android.

Neste botão ele irá compartilhar o envio de e-mail através do nosso app.

Primeiro vamos verificar no que a documentação diz.

https://developer.android.com/guide/components/intents-common?hl=pt-BR#Email

Ele diz que devemos utilizar uma das ações:

Agora vamos codificar para que nossa aplicação compartilhe com e-mail.


procedure TForm2.Button2Click(Sender: TObject);
var
    Email : JIntent;
begin
    Email := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_SENDTO);
    Email.setType(StringToJString('*/*'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, StringToJString('bittencourtthulio@gmail.com'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString('E-mail enviado pelo DUP 2.0'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString('Este e-mail foi enviado pelo intent do APP DUP 2.0'));
    SharedActivityContext.startActivity(Email);
end;

Observe que instanciamos o obejto Email com a opção ACTION_SENDTO que observando na documentação é para nenhum anexo.

Depois nós definimos o tipo que devemos definir, nós colocamos para todos “*/*”.

Depois nós passamos os inputs que precisamos definir.

O primeiro input foi EXTRA_EMAIL segundo a documentação é para quem eu quero mandar o e-mail, onde passamos o e-mail que queremos mandar.

E usamos o input EXTRA_SUBJECT para por o assunto do e-mail, e depois do titulo do e-mail usamos o EXTRA_TEXT para o corpo do e-mail.

Na ultima linha não setamos o pacote do gmail e sim SharedActivityContext.startActivity(Email), ao rodarmos nosso projeto veja o que acontece quando mandamos a informação sem setar qual é o pacote.

Ele abre uma lista com todas as aplicações que estão aptas a receber o tipo ‘*/*’ de intent que definimos.

Se selecionarmos o gmail o que acontece…

Ele abre o gmail já com as informações que passamos nos intents prontas para serem consumidas.

Agora passando o pacote do gmail, antes do SharedActivityContext.startActivity(Email).


procedure TForm2.Button2Click(Sender: TObject);
var
    Email : JIntent;
begin
    Email := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_SENDTO);
    Email.setType(StringToJString('*/*'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, StringToJString('bittencourtthulio@gmail.com'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString('E-mail enviado pelo DUP 2.0'));
    Email.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString('Este e-mail foi enviado pelo intent do APP DUP 2.0'));
    Email.setPackage(StringToJString('com.google.android.gm'));
    SharedActivityContext.startActivity(Email);
end;

O pacote para o gmail é o com.google.android.gm.

Vamos rodar novamente nosso projeto, especificando o pacote.

Viu que ao clicar no botão de e-mail ele já abre o aplicativo do gmail com as informações que passamos nos inputs.

Esse post, mostra parte do que eu te ensino no treinamento Google Firebase com Android no Delphi, além de aprender a trabalhar com intents do Android, você também irá dominar o google firebase com Delphi.

Além disso, nesse treinamento você irá aprender de forma prática a utilizar o Componente TBGFirebase, realizar um CRUD Completo no Firebase, desenvolver uma aplicação mobile consumindo o Google Firebase e dicas e truques para aplicativos mobile.

Imagina,quando seu cliente pedir para acessar os dados dele remotamente, e você finalmente poder atender! Posso garantir que você estará preparado para entregar uma solução robusta e eficaz.

O conteúdo desse curso e os seus benefícios sem dúvidas, irão facilitar muito a sua vida.

CLIQUE AQUI PARA SABER MAIS SOBRE O TREINAMENTO GOOGLE FIREBASE COM ANDROID NO DELPHI.







Faça sua busca

CATEGORIAS

POSTS RECENTES

E caso você tem interesse de conhecer mais sobre Intents – Enviando E-mail pelo aplicativo no Android, acesse o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI
Você não terá só conteúdos relacionados ao Intents – Enviando E-mail pelo aplicativo no Android, mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.
Gostou?
Compartilhe:

Embarque no foguete com milhares de devs para aprender desenvolvimento, evoluir de forma contínua e se manter relevante no mercado.

Dúvidas
Cadastre-se em nossa lista

Para ter acesso em primeira mão, a tudo que acontece na Academia do Código, basta se cadastrar em nossa lista

Grupo Thulio Bittencourt | Academia do Código

#FaçaPartedaHistória

Copyright © 2024 – Todos os direitos reservados