| Exibir mensagem anterior :: Exibir próxima mensagem | 
	
	
		| Autor | Mensagem | 
	
		| marcelo_tux Aprendiz
 
  
 
 Registrado: Terça-Feira, 2 de Abril de 2013
 Mensagens: 230
 Localização: São José do Rio Preto - SP
 
 | 
			
				|  Enviada: Qui Ago 22, 2019 2:10 pm    Assunto: Leitor Biometrico. |   |  
				| 
 |  
				| Boa tarde. Alguém já fez ou sabe como acessar o leitor de digital do android com firemonkey ?
 Por exemplo fazer um app que autentique com a digital.
 
 Att
 Marcelo
 _________________
 Porgramador Delphi - Mobile
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| rodrigoprado Colaborador
 
  
 
 Registrado: Terça-Feira, 24 de Mai de 2005
 Mensagens: 1074
 Localização: Curitiba/PR
 
 | 
			
				|  Enviada: Qui Out 03, 2019 6:00 pm    Assunto: |   |  
				| 
 |  
				| Blz pessoal, por gentileza alguém avançou com essa situação? 
 seria "Fingerprint with android in delphi" or "Biometric"
 
 Até achei um componente aqui, mas é pago...
 
 TTMSFMXNativeLocalAuthentication
 Authentication via Touch ID
 Requires a device that supports Touch ID
 Built-in verification if authentication via Touch ID is possible
 
 https://www.tmssoftware.com/site/tmsicl.asp
 
 Bom segue um exemplo em java... algo assim..
 
 https://developer.android.com/training/sign-in/biometric-auth
 _________________
 - Compartilhe seus conhecimentos -
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| lucasc Membro Junior
 
  
 
 Registrado: Quinta-Feira, 10 de Mai de 2007
 Mensagens: 305
 
 
 | 
			
				|  Enviada: Seg Nov 04, 2019 9:57 am    Assunto: |   |  
				| 
 |  
				| Eu também estou a procura. |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| rodrigoprado Colaborador
 
  
 
 Registrado: Terça-Feira, 24 de Mai de 2005
 Mensagens: 1074
 Localização: Curitiba/PR
 
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qui Jan 09, 2020 10:49 am    Assunto: |   |  
				| 
 |  
				| Baixe o sdk biometric-1.0.1.aar
 
 Use o java2op
 
 Siga o exemplo do link:
 biometric auth
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| marcelo_tux Aprendiz
 
  
 
 Registrado: Terça-Feira, 2 de Abril de 2013
 Mensagens: 230
 Localização: São José do Rio Preto - SP
 
 | 
			
				|  Enviada: Qui Jan 09, 2020 2:43 pm    Assunto: |   |  
				| 
 |  
				| Boa Tarde strak2012 , obrigado pela ajuda. Estou tentando gerar a unit com o java2op , porém esta gerando uma unit vazia.
 Saberia o porque ?
 _________________
 Porgramador Delphi - Mobile
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qui Jan 09, 2020 4:44 pm    Assunto: |   |  
				| 
 |  
				|  	  | marcelo_tux escreveu: |  	  | Boa Tarde strak2012 , obrigado pela ajuda. Estou tentando gerar a unit com o java2op , porém esta gerando uma unit vazia.
 Saberia o porque ?
 | 
 
 abra o *.aar com o winrar  ou 7zip extraia o classe.jar
 renomei o classe.jar para biometric.jar para ficar mais comodo
 com o biometric.jar gere a unit bridge com java2op
 importe o biometric.jar para o projeto
 
 Realize a transcrição do exemplo java do link para delphi
 o código não ficara muito diferente entre java e delphi
 
 pronto!
 
 é testar
 
 notas e observações:
 1 - Dê preferencia ao java2op da versão do delphi 10.3
 2 - Talvez algumas permissões seja necessitaria ou não dá uma pesquisada
 
 @Editado---
 
 Confirmado as permissões necessárias são:
 
  	  | Código: |  	  | <uses-permission android:name="android.permission.USE_BIOMETRIC" /> <uses-permission android:name="android.permission.USE_FINGERPRINT" />
 | 
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| marcelo_tux Aprendiz
 
  
 
 Registrado: Terça-Feira, 2 de Abril de 2013
 Mensagens: 230
 Localização: São José do Rio Preto - SP
 
 | 
			
				|  Enviada: Sex Jan 10, 2020 1:47 pm    Assunto: |   |  
				| 
 |  
				| Consegui gerar a unit , porém não to conseguindo usar de jeito nenhum. Quando tiver um tempinho e puder me ajudar a usá-la.
 
 Obrigado.
 _________________
 Porgramador Delphi - Mobile
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Sex Jan 17, 2020 1:32 am    Assunto: |   |  
				| 
 |  
				| E depois de mais de uma semana estudando o caso enfim consegui compilar um exemplo uffa. 
 Fazer uso de SDK no Delphi vem sendo cada vez mais trabalhosa.
 
 Vou citar os problema que enfrentei ao tentar fazer uso desta sdk no Delphi e as suas respectivas soluções:
 
 1 - Dependência de pacotes
 É comum que um jar depende de outro jar e aí vem a batalha de buscar-las em repositórios como o maven
 
 Este pacote tem dependência de pelo menos outros três pacotes mais vamos abstrair esta questão com um simples demo apk em java já funcional
 
 Com o apk em java funcional você neste mesmo apk já possui tudo necessário para fazer uso da sdk então basta saber como extrair deste apk o que necessitamos.
 
 Vale lembrar que arquivos do tipo *.apk *.jar *.aar pode serem manipulados pelo WinRAR ou 7zip
 
 Deste demo apk vamos extrair todo seu conteúdo em uma pasta.
 
 O que basicamente vamos necessita desta extração são: a pasta chamada RES e os arquivos *.dex se houver mais de um claro.
 
 Vais precisar converter o *.dex em *.jar costumo da seu nome de FullSdk.jar, já expliquei em post antigos o processo desta conversão.
 
 Vamos agora voltar ao projeto e incluir o FullSdk.jar ao projeto e compilar pode haver conflito de jar e um erro saltar normalmente estar relacionado ao android-suport-v4.dex.jar e a FullSdk.jar ou seja ambas devem possuir algumas classe em comum.
 
 Solução:
 Abrir o FullSdk com o WinRAR e deletar o que pode estar a causar este conflito.
 
 Resultado esperado:
 Depois de deletar os arquivo de conflito da FullSdk.jar a compilação deve ser concluída sem erros
 
 Uma vez que tenhamos este resultado agora passamos para o java2op
 
 Deverá conseguir gerar o FullSdk.pas sem problema, importe para o seu projeto e notará um série de erro na FullSdk.pas
 
 Os erro mais comum são:
 1 - overloads;
 2 - nomes de variáveis, constante functions e procedures com palavras reservadas
 3 - símbolo $ em nomes de variáveis, constante, functions e procedures
 
 Neste aspecto você precisa analisar cada caso para saber como corrigir cada um dos problemas.
 Você pode também comentar a linha com o problema se for de uma classe que não irar chamar em seu programa.
 
 Resultado esperado:
 Depois do ajustes na FullSdk.pas será esperado uma compilação sem erros
 
 Até este ponto estava familiarizado com todo este processo e para mim não havia muito segredo.
 
 As coisas começa a complicar a partir deste ponto aqui.
 
 Existe uma razão para que as Sdk venha em *.aar em vez de *.jar
 É que *.aar acompanha arquivos recursos tipo *.png *.XML dentre outros mais e um chamado classe.jar que seria a própria SDK, noto que isso é um padrão das SDK no repositório maven.
 
 Pois bem vais precisar agora introduzir os xmls e os pngs ao seu projeto em deployment isso pq está sdk provavelmente necessita de algum destes arquivos
 
 Aqui quando você tentar compilar terá muitos surpresas desagradável e muitos erros
 Dos que encontrei foi:
 
 Nome de XML ou PNG não pode possuir o símbolo $
 -Fácil resolver basta renomear os arquivos trocando onde tem $ por _ e problema resolvido
 
 Arquivo public.xml não é suportada pelo aapt.exe nossa e agora?
 um erro vai saltar com o seguit texto -> [PAClient Error] Error: E2312 First type is not attr!
 a compilação consegue exito quando desmarcado o public.xml do deployment
 
 A solução passara por termos que usar o aapt2.exe e claro também pelo aapt.exe
 
 A pergunta é como?
 Ambos gera um apk não assinado o aapt.exe gera tal como o na ide delphi, uma vez claro que a própria ide usa ele.
 vou deixar as linhas de comando que funcionou para mim:
 
 
  	  | Código: |  	  | cd C:\Users\Public\Documents\Embarcadero\Studio\20.0\PlatformSDKs\android-sdk-windows\build-tools\29.0.2\ aapt.exe package -f -M "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\AndroidManifest.xml" -F "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\bin\aapt_BiometricDelphi-unsigned.apk" -I "C:\Users\Public\Documents\Embarcadero\Studio\20.0\PlatformSDKs\android-sdk-windows\platforms\android-28\android.jar" -S "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\res" -A "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\assets" "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\library" "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\classes"
 aapt2.exe compile --dir "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\apk java decoded\res" -o "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\apk java decoded\resources.zip"
 aapt2.exe link -o "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\bin\aapt2_BiometricDelphi-unsigned.apk" --manifest "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\Android\Debug\BiometricDelphi\AndroidManifest.xml" -I "C:\Users\Public\Documents\Embarcadero\Studio\20.0\PlatformSDKs\android-sdk-windows\platforms\android-28\android.jar" "C:\Users\strak\Desktop\biometria_delphi_android2\biometric\apk java decoded\resources.zip" -v
 
 | 
 
 com os dois apks gerado voce agora vai pegar novamente o winrar e copiar o conteúdo de um para o outro o de menor tamenho para o de maior tamanho
 depois assinar o apk e instalar no dispositivo
 
 existe muitos pormenores que ainda não consegui mencionar nesta postagem, assim na duvida vai perguntando pq certamente devo ter esquecido de mencionar varias coisas
 
 Download de exemplo compilado + fontes:
 Download do apenas do apk já compilado
 Download do apk + fontes
 
 
 Observação:
 É um processo muito trabalhoso, e tem uma desvantagem de não poder debugar a aplicação uma vez que voce estar gerando o apk fora da ide delphi
 assim estou estudando forma de implementar isso na  ide delphi de forma automatica.
 
 Algumas telas deste duro trabalho:
 
     
    _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Seg Jan 20, 2020 1:04 am    Assunto: |   |  
				| 
 |  
				| Agora com o projeto mais organizado e com a possibilidade de debugar-lo   
 Para isso criei um código fonte de um aplicação de auxilio chamada aaptEx.exe ela basicamente deve ser chamada pelo delphi em vez da aapt.exe, assim sendo ela deve ser copiada para pasta onde se localiza as aplicações aapt.exe e a aapt2.exe, pois a aaptEx.exe vai fazer uso das duas para gerar os dois apk e depois uni em um só, foi usado o ZipForge para manipular os dois apks
 
 Download fontes do apk biometria em delphi + fonte do aaptEx.exe
 
 Local onde o aaptEx.exe foi colocado em meu caso:
 
   
 Os arquivos do projeto ficou desta forma:
 
  _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| marcelo_tux Aprendiz
 
  
 
 Registrado: Terça-Feira, 2 de Abril de 2013
 Mensagens: 230
 Localização: São José do Rio Preto - SP
 
 | 
			
				|  Enviada: Seg Jan 20, 2020 8:07 am    Assunto: |   |  
				| 
 |  
				| Muito obrigado strak2012. Obrigado por ter disponibilizado seu tempo e conhecimento para nos ajudar.
 Assim que der vou implantar em um software meu para teste.
 
 Mais um vez Obrigado.
 _________________
 Porgramador Delphi - Mobile
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| marcelo_tux Aprendiz
 
  
 
 Registrado: Terça-Feira, 2 de Abril de 2013
 Mensagens: 230
 Localização: São José do Rio Preto - SP
 
 | 
			
				|  Enviada: Ter Jan 21, 2020 8:41 am    Assunto: |   |  
				| 
 |  
				|  	  | strak2012 escreveu: |  	  | Agora com o projeto mais organizado e com a possibilidade de debugar-lo   
 Para isso criei um código fonte de um aplicação de auxilio chamada aaptEx.exe ela basicamente deve ser chamada pelo delphi em vez da aapt.exe, assim sendo ela deve ser copiada para pasta onde se localiza as aplicações aapt.exe e a aapt2.exe, pois a aaptEx.exe vai fazer uso das duas para gerar os dois apk e depois uni em um só, foi usado o ZipForge para manipular os dois apks
 
 Download fontes do apk biometria em delphi + fonte do aaptEx.exe
 
 Local onde o aaptEx.exe foi colocado em meu caso:
 
   
 Os arquivos do projeto ficou desta forma:
 
  | 
 
 Hoje fui testar , ao acionar o botão login no meu aparelho ele dá a seguinte mensagem :
 "Fingerprint is not registered in device"
 _________________
 Porgramador Delphi - Mobile
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Ter Jan 21, 2020 8:58 am    Assunto: |   |  
				| 
 |  
				| O dispositivo não possui suporte, ou não possui o sensor de impressão digital. 
 
 Neste caso você pode trocar a mensagem por um painel de pin, exemplo quando há suporte exibe a caixa para impressão digital, quando não exibe um painel numérico para entrar com uma senha.
 
 Basicamente é isso.
 
 Você sabendo interceptar se há ou não suporte você pode então exibir um teclado para senha.
 
 O fonte só é funcional se o dispositivo possuir o sensor de impressão digital e se o dispositivo é suportado pela sdk.
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Ter Jan 21, 2020 9:03 am    Assunto: |   |  
				| 
 |  
				| Fingerprint is not registered in device 
 Se bem que esta mensagem indica que você não possui nenhum impressão cadastrada no Android.
 
 Você tentar cadastrar um digital e voltar a testar.
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Ter Jan 21, 2020 9:04 am    Assunto: |   |  
				| 
 |  
				| Também pode vê se consegue chamar as configuração para cadastro de digital, que deverá ser por intent não saberia dizer como fazer isso agora mais é possível. _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		|  |