DELPHI 10.3 开发APP 在Android手机上获取IMEI

2022-12-14 09:35:57 作者:admin

本文整理自网络,侵删。

 在这篇文章中,我们将编写一个带有Delphi 10.3 Rio的Android应用程序,能够捕获设备的IMEI。运行时权限Android的一个进化点是请求在运行时使用资源的权限。实际上,应用程序在执行时应该要求用户授权使用Android认为“危险”的功能。


在Delphi 10.3是第一个版本,以配备原生机制,满足Android的这一要求。因此,从Delphi 10.3 Rio开始,新的Android权限模型应该是我们的代码。
IMEI设备IDIMEI是一个缩写,移动设备识别码 (国际移动设备识别码)。这是每个设备的唯一数字序列和特殊字符。这个想法非常类似于网卡的MAC地址。这使得每月在市场上的数百个设备中定位特定设备变得容易。
创建Mobile Delphi 10.3应用程序谈到移动APP,确保只有授权的“人员”APP才能查看公司信息是至关重要的。在Delphi 10.3中创建一个新的Mobile项目,在源代码中,我们将在uses子句中添加以下引用:
uses  FMX.Platform.Android,  Androidapi.JNI.Telephony,  Androidapi.JNI.Provider ,  Androidapi.JNIBridge,  Androidapi.JNI.GraphicsContentViewText,  Androidapi.JNI.JavaTypes,  Androidapi.Helpers; 
在表单中,我们将添加一个Button,将其Text属性更改为“Capture IMEI” ,将Name属性更改为btnCaptureIMEI。 


让我们编写你的onClick事件,如下所示:
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;容易......非常容易......运行APP并单击按钮,将显示设备的IMEI。――――――――――――――――

原文链接:https://blog.csdn.net/xyzhan/article/details/98211163

相关阅读 >>

Delphi tstreamreader 和tstreamwriter

Delphi xe6 使用intent启动活动并在android应用程序中获取返回值的示例

Delphi如何获取句柄?

Delphi ado通用操作数据单元

Delphi xe7 判断android应用程序中的通信状态类型

Delphi中使用ado连接带密码的access

Delphi urldownloadtofile 支持进度条

Delphi xe5 重启 关闭 windows 8

Delphi 中文字符串函数问题rightstr

Delphi 生成全球唯一标识符

更多相关阅读请进入《Delphi》频道 >>



在线咨询 拨打电话