Quando se fala de Mobilidade garantir que informações corporativas sejam visualizadas apenas por “pessoal” autorizado é essencial. Nessa postagem vamos implementar a autenticação de uma aplicação Delphi XE5 Android através do IMEI do dispositivo.
IMEI a identificação do dispositivo
IMEI é o acrônimo de Mobile Equipment Identity (Identificação Internacional de Equipamento Móvel). Trata-se de uma sequência de números e caracteres especiais única para cada dispositivo. A ideia é bem parecida com o MAC address das placas de rede. Isso facilita na hora de localizar um aparelho específico em meio às centenas de dispositivos colocados no mercado todos os meses.
Criando a aplicação Mobile Delphi XE5
Crie um novo projeto Mobile no Delphi XE5. No fonte do form da aplicação vamos adicionar as seguintes referências na clausula uses:
uses FMX.Platform.Android, Androidapi.JNI.Telephony, Androidapi.JNI.Provider , Androidapi.JNIBridge, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.Helpers.Android;
No form vamos adicionar um Button, alterar sua propriedade Text para “Capturar IMEI” e a propriedade Name para btnCapturarIMEI.
Vamos codificar seu evento onClick como abaixo:
procedure TForm1.btnCapturarIMEIClick(Sender: TObject); var obj: JObject; tm: JTelephonyManager; IMEI: String; begin obj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); if obj <> nil then begin tm := TJTelephonyManager.Wrap( (obj as ILocalObject).GetObjectID ); if tm <> nil then IMEI := JStringToString(tm.getDeviceId); end; if IMEI = '' then IMEI := JStringToString(TJSettings_Secure.JavaClass.getString( SharedActivity.getContentResolver, TJSettings_Secure.JavaClass.ANDROID_ID)); ShowMessage('IMEI :' + #13 + IMEI); end;
Fácil… extremamente fácil…
Execute a aplicação e clicando sobre o botão o IMEI do seu dispositivo será exibido.
Vimos como é fácil capturar o IMEI através de uma aplicação Android Delphi XE5.
Implementando um banco de dados contendo os IMEI's autorizados e fazendo uma pesquisa neles você pode garantir o acesso apenas aos dispositivos previamente cadastrados no seu servidor de aplicação.
É isso… simples assim!
Até a próxima!