Uniapp安卓端获取手机号码

简述

简单的讲就是可以使用uniapp调取原生的安卓的接口来获取对应的手机号码信息

准备工作

下面是要开启的获取手机号的的必要信息转变准备

然后就是开启应用权限管理的号码权限(一般都会开启)

获取主手机号

javascript 复制代码
onLoad() {
	plus.android.importClass('android.telephony.TelephonyManager')

	let context = plus.android.importClass('android.content.Context');
	let TelephonyManager = plus.android.runtimeMainActivity().getSystemService(context.TELEPHONY_SERVICE);

	let OperatorName = TelephonyManager.getSimOperatorName();
	let phoneNumber = TelephonyManager.getLine1Number();

	console.log(`运行商名称:${OperatorName}`);
	console.log(`手机号:${phoneNumber}`);

},

获取所有的sim卡的手机号

javascript 复制代码
// 导入必要的类
let SubscriptionManager = plus.android.importClass('android.telephony.SubscriptionManager');
let TelephonyManager = plus.android.importClass('android.telephony.TelephonyManager');
let Context = plus.android.importClass('android.content.Context');

// 获取系统服务
let context = plus.android.runtimeMainActivity();
let subscriptionManager = context.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
let telephonyManager = context.getSystemService(Context.TELEPHONY_SERVICE);

// 获取所有的订阅信息
let subscriptionInfoList = subscriptionManager.getActiveSubscriptionInfoList();
if (subscriptionInfoList) {
    for (let i = 0; i < subscriptionInfoList.size(); i++) {
        let subscriptionInfo = subscriptionInfoList.get(i);
        let subscriptionId = subscriptionInfo.getSubscriptionId();
        
        // 获取每个SIM卡的TelephonyManager实例
        let telephonyManagerForSim = telephonyManager.createForSubscriptionId(subscriptionId);
        let phoneNumber = telephonyManagerForSim.getLine1Number();
        
        console.log(`SIM卡 ${i + 1} 的手机号: ${phoneNumber}`);
    }
} else {
    console.log('无法获取订阅信息');
}

当然这些都是得在用户允许的前提之下注意返回值哈

相关推荐
移动开发者1号1 小时前
ReLinker优化So库加载指南
android·kotlin
山野万里__1 小时前
C++与Java内存共享技术:跨平台与跨语言实现指南
android·java·c++·笔记
Huckings1 小时前
Android 性能问题
android
移动开发者1号2 小时前
剖析 Systrace:定位 UI 线程阻塞的终极指南
android·kotlin
移动开发者1号2 小时前
深入解析内存抖动:定位与修复实战(Kotlin版)
android·kotlin
whysqwhw2 小时前
OkHttp深度架构缺陷分析与革命性演进方案
android
Digitally4 小时前
如何将文件从 iPhone 传输到 Android(新指南)
android·ios·iphone
whysqwhw5 小时前
OkHttp深度架构缺陷分析与演进规划
android
用户7093722538515 小时前
Android14 SystemUI NotificationShadeWindowView 加载显示过程
android
木叶丸5 小时前
跨平台方案该如何选择?
android·前端·ios