Quando ativo um método de entrada (um aplicativo de teclado) em um dispositivo Nexus, vejo a seguinte mensagem de confirmação:
Esse método de entrada pode coletar todo o texto digitado, incluindo dados pessoais, como senhas e números de cartão de crédito. Vem do aplicativo Highway. Use este método de entrada?
Eu entendo esse aviso. Devido à maneira como um método de entrada funciona, ele tem a capacidade de coletar tudo o que digito e tenho que confiar no autor para não abusar dessa capacidade. Mas quando ativo um método de entrada no meu Samsung Galaxy S3 (e talvez em outros dispositivos Samsung; ainda não tentei), recebo uma mensagem diferente (minha ênfase):
Este método pode coletar todo o texto digitado, exceto senhas , incluindo dados pessoais e números de cartão de crédito. Vem do aplicativo Highway. Usar assim mesmo?
Verifiquei inserindo uma senha em um formulário da Web e definindo a senha do dispositivo. Nos dois casos, ele ainda usa o método de entrada (de terceiros) que escolho para inserir a senha. Então, por que a Samsung afirma que o método de entrada não pode coletar senhas? Eles estão fazendo algo incrivelmente inteligente em sua versão do Android, ou estão apenas falando bobagens?
fonte
Respostas:
Como programador, acho isso interessante. Os campos de senha podem ser (e geralmente são) tratados de maneira diferente das caixas de texto normais. Dado que o Android é de código aberto, acho que é possível que a Samsung tenha ao menos tentado incluir código que impeça que um campo de senha passe informações digitadas nele de volta para o aplicativo de teclado, mas, como outros declararam, sou cético.
Para que um aplicativo de teclado colete seus dados, é necessário incluir a etapa extra de capturar sua entrada, armazená-la em algum lugar, mesmo que apenas temporariamente em uma variável de instância, e enviá-la a terceiros. Gostaria de ouvir o que a Samsung diz sobre isso e como eles supostamente o impedem, mas acho que é uma resposta que provavelmente não obteremos.
fonte