微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

TelephonyManager 在 Android 10 上崩溃

如何解决TelephonyManager 在 Android 10 上崩溃

我在 Crashlytics 中获得了以下堆栈跟踪,适用于各种 android 10 设备。 致命异常:java.lang.NullPointerException 尝试在空对象引用上调用虚拟方法java.lang.Throwable android.os.ParcelableException.getCause()”

android.telephony.TelephonyManager$1.lambda$onError$2
android.telephony.TelephonyManager$1.lambda$onError$2 (TelephonyManager.java:5346)
android.telephony.-$$Lambda$TelephonyManager$1$DUDjwoHWG36BPTvbfvZqnIO3Y88.run (-.java:6)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
java.lang.Thread.run (Thread.java:919)

没有参考应用程序的哪一部分导致此问题,但我正在使用 TelephonyManager 获取设备 MCC 和 MNC,如下所示

  fun getMCCFromDevice(context: Context): String? {
    try {
        val tm = context.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
        if (tm != null) {
            val networkOperator = tm!!.getNetworkOperator()
            if (!TextUtils.isEmpty(networkOperator)) {
                return networkOperator.substring(0,3)
            }
        }
    } catch (e: Exception) {
        e.printstacktrace()
    }

    return null

}

fun getMNCFromDevice(context: Context): String? {
    try {
        val tm = context.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
        if (tm != null) {
            val networkOperator = tm!!.getNetworkOperator()
            if (!TextUtils.isEmpty(networkOperator)) {
                return networkOperator.substring(3) // Extract MNC part
            }
        }
    } catch (e: Exception) {
        e.printstacktrace()
    }

    return null
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?