无法使用代码段显示IMEI

时间:2014-08-09 00:12:50

标签: android android-intent ussd

当我在手机上拨*#06#时,会显示IMEI。细

但是当我使用这种代码时:

String imei="*#06#";
Intent cintent= new Intent(Intent.ACTION_DIAL, Uri.parse("tel:"+Uri.encode(imei)));
startActivity(cintent);

(或ACTION_CALL而不是ACTION_DIAL)

... USSD代码在拨号器上正确显示(*#06#)。但即使我点击呼叫IMEI永远不会出现(错误:“连接问题或无效的MMI代码”)。

我一直在浏览其他类似的主题,但没有找到解决方案,也无法确定如何使其正常工作(我的手机运行的是Android 4.4.4)。

请注意,我不想得到USSD的结果,只是以某种方式执行它。如果有可能......

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

我们有不同的方式来获取设备的IMEI。你可以点击链接(可能重复)。How can I get phone serial number (IMEI)

TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.getDeviceId();

您应该将以下权限添加到Manifest.xml文件中:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>