XE5 Android IMEI Okuma
Merhabalar XE5 ile zaman ilerledikçe kendi uygulamalarımızı geliştirmeye devam ediyoruz. Günü geldikçede kendimizde lisanslı uygulamalar üretme isteği er yada geç uyanacağı kesindir. Bunun için birçok çeşitli yöntemler vardır; Kullanıcı adına göre, Modeme göre veya Cihaz sayısına göre buda IMEI numaraları ile gerçekleşmektedir. IMEI NEDIR?Bu sayede yazdığınız uygulamalarda kullanıcıların kaç hesabı olursa olsun sizin belirlediğiniz IMEI numaralarına göre bir lisanslama gerçekleştirirseniz çaresiz sınırlar içerisinde kullanmak durumunda kalacaktır. Lafı fazla uzatmadan kodumuzu paylasıyorum bir fonksiyon içerisinde yazılı olan bu kodumuzun çalışması için Uses kısmına aşağıdakileride yazmayı unutmamanız gerekmektedir.
uses Androidapi.JNI.Telephony, Androidapi.JNI.Provider , Androidapi.JNIBridge, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes,FMX.Helpers.Android; READ_PHONE_STATE permission = true //Okumak izin sağlamış oluyoruz function IMEIOku():String; var obj : JObject; tm : JTelephonyManager; strIMEI : 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 strIMEI := JStringToString(tm.getDeviceId); end; if strIMEI = '' then strIMEI := JStringToString( TJSettings_Secure.JavaClass.getString( SharedActivity.getContentResolver, TJSettings_Secure.JavaClass.ANDROID_ID ) ); Result := strIMEI; end;Bu güzel örneğini bizlere sunan Muharrem ARMAN (mrmarman) hocamıza teşekkürler.
Hiç yorum yok:
Yorum Gönder