ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Intent no Delphi Firemonkey

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Mobile com Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
marciodias
Novato
Novato


Registrado: Quarta-Feira, 8 de Julho de 2020
Mensagens: 1

MensagemEnviada: Qua Jul 08, 2020 4:40 pm    Assunto: Intent no Delphi Firemonkey Responder com Citação

Olá amigos!
Será que alguém aí já trabalhou com intent no firemonkey?
Estou desenvolvendo um app que vai rodar em um dispositivo móvel (uma máquina de cartão da Cielo).
Essa máquina se comunica com uma impressora integrada, através do envio de intent para uma app que roda em segundo plano do dispositivo.

Eu estou tentando o seguinte:

{$IFDEF ANDROID}
Base64 := MinhaEncodeBase64(BytesOf(scheme));

// Este é o formato da URI que deve ser enviada para a impressora
Uri := 'lio://print?request='+Base64+'&urlCallback=order://response';

Imprime1 := TJIntent.Create;

Imprime1.setType(StringToJString('text/pas'));
Imprime1.setAction(TJIntent.JavaClass.ACTION_VIEW);
Imprime1 := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW,
TJnet_Uri.JavaClass.parse(StringToJString(TIdURI.URLEncode(uri))));
Imprime1.setPackage(StringToJString('com.ads.lio.uriappclient'));
Imprime1.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString(uri));

if MainActivity.getPackageManager.queryIntentActivities(Imprime1,
TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY).size > 0 then
MainActivity.startActivity(Imprime1);

{$ENDIF}

A Rotina acima está imprimindo, mas há um problema.
Depois da impressão a aplicação que controla a impressoa permanece aberta, como se tivesse esperando alguma retorno da minha aplicação.
Quando eu clico no botão "VOLTAR" do dispositivo a aplicação reimprime
uma linha que já foi impressa e eu tenho que clica no "Voltar" várias vezes,
até meu aplicativo voltar a ser exibido na tela.

Me parece que da maneira que eu estou enviando as Intents a minha aplicação fica aguardando um retorno da app que controla a impressora.
Mas não é necessário nem conveniente aguardar esse retorno.

Será que alguém monta esse quebra-cabeça?
Desde já agradeço.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Mobile com Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB