首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从设备中获取eSIM电话号码?

如何从设备中获取eSIM电话号码?
EN

Stack Overflow用户
提问于 2019-12-19 14:59:43
回答 1查看 460关注 0票数 0

我想从设备中获取一个eSIM电话号码。

我使用SubscriptionInfo类来获取电话号码,但它总是返回null。

代码语言:javascript
复制
SubscriptionManager subscriptionMgr = SubscriptionManager.from(context);
SubscriptionInfo subscriptionInfo = subscriptionMgr.getActiveSubscriptionInfoForSimSlotIndex(simIndex);

String phoneNumber = subscriptionInfo.getNumber()

我还在Manifest文件中给出了权限:

代码语言:javascript
复制
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
EN

回答 1

Stack Overflow用户

发布于 2019-12-19 22:00:07

您必须检查是否授予了权限。

代码语言:javascript
复制
public void getSIMNumber() {
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP_MR1) {
        SubscriptionManager subscriptionManager = SubscriptionManager.from(mContext.getApplicationContext());
        //TODO check if permission is Granted

        List<SubscriptionInfo> subsInfoList = subscriptionManager.getActiveSubscriptionInfoList();

        Log.d("Test", "Current list = " + subsInfoList);

        for (SubscriptionInfo subscriptionInfo : subsInfoList) {

            String number = subscriptionInfo.getNumber();

            Log.d("Test", " Number is  " + number);
        }
    }

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59404666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档