Как получить CID и LAC для обоих симов в случае двух сим-карт программно? - PullRequest
0 голосов
/ 25 октября 2018

Я работаю над проектом, в котором мне нужно отслеживать местоположение с помощью мобильной вышки.Когда sim2 находится в экстренном случае, в Telephony Manager выдается исключение нулевого указателя.Я должен получить LAC, CID, MCC, MNC для обеих симов.Я могу получить MCC, MNC с помощью SubscriptionManager.Но как я могу получить LAC и MCC для обеих сим-карт?

1 Ответ

0 голосов
/ 17 декабря 2018

Попробуйте следующим образом

Создайте пойо, скажем, Operator

data class Operator(
    var operatorName: String? = null,
    var operatorNumber: String? = null,
    var position: Int? = null,
    var subscriptionId: String? = null,
    var subId: Int? = null)

Сейчас в действии

var subscriptionManager =getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE) as SubscriptionManager
        val listOfSubInfo = subscriptionManager.activeSubscriptionInfoList
        for (value in listOfSubInfo) {
                operatorList?.add(Operator(value.displayName.toString(), value.number, value.simSlotIndex, value.iccId, value.subscriptionId))
          }

Теперь у вас есть список всей информации о симах внутриустройство.Используя этот метод, вы можете получить MCC, MNC, subscriptionId, iccId.

...