【问题标题】:Fail to display IMEI using code snippet无法使用代码段显示 IMEI
【发布时间】:2014-08-09 00:12:50
【问题描述】:

当我在手机上拨打 *#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 的结果,只是让它以某种方式执行。如果可能的话......

感谢您的帮助!

【问题讨论】:

    标签: android android-intent ussd


    【解决方案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"/>
    

    【讨论】:

    • 感谢您的回答。当时的想法是显示 IMEI,但我想稍后再拨打其他 USSD 电话,而不仅仅是获取 IMEI。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 2012-02-28
    • 1970-01-01
    • 1970-01-01
    • 2021-01-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多