Ir para conteúdo
  • Cadastre-se

dev botao

Obter o payload (url) a partir do qrcode lido


Ver Solução Respondido por marciost,

Recommended Posts

  • Moderadores
3 minutos atrás, marciost disse:

Não seria ler o QRCode, isso está lido, já tenho a string com a representação. O que eu queria ver é se existe algum método onde eu passo essa string e ele me devolve a url do payload;

tenta olhar as units do ACBrPIXCD que pode ser que tenha algo mas não lembro mesmo de cabeça

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

var
  BRCode : TACBrBRCode;
  EMVList: TACBrEMVList;
begin
BRCode := TACBrBRCode.Create;
try
   // Aqui passa todo o QRCode
   BRCode.AsString := Edit1.Text;

   EMVList := TACBrEMVList.Create;
   try
      // Aqui pego somente o bloco onde fica a URL ou chave
      EMVList.AsString := BRCode.ID[cID_MerchantAccountInformation];

      // Aqui trato se tem chave ou URL
      if EMVList.ID[cID_PixKey] <> '' then
         Edit2.Text := EMVList.ID[cID_PixKey]
      else
         Edit2.Text := EMVList.ID[cID_URL]
   finally
      EMVList.Free;
   end;
finally
   BRCode.Free;
end;

Pessoal, para quem precisar, de maneira geral isso funciona. Melhor seria se tivesse uma chamada mais pronta, mas isso ai meio que quebra o galho.

Alguém tem sugestão melhor?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Solution
function TForm1.ExtrairURLChave(pQRCode: String): String;
begin
with TACBrBRCode.Create do
   begin
   // Todo o QRCode
   AsString := pQRCode;

   // Somente a parte que tem a chave/url
   AsString := ID[cID_MerchantAccountInformation];

   // Aqui busca a chave ou url
   if ID[cID_PixKey] <> '' then
      Result := ID[cID_PixKey]
   else
      Result := ID[cID_URL];

   Free;
   end;
end;

Aqui já melhorado....

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.