Android 14原生设置中获取设备蓝牙、wifi固定mac地址

1.获取设备固定的蓝牙mac地址

在原生设置中,获取mac地址会对蓝牙开关状态进行,当前蓝牙开关关闭时会返回空:

@SuppressLint("HardwareIds")
    @Override
    protected void updateConnectivity() {
        BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter();
        if (bluetooth != null && mBtAddress != null) {
            String address = bluetooth.isEnabled() ? bluetooth.getAddress() : null;
            if (!TextUtils.isEmpty(address)) {
                // Convert the address to lowercase for consistency with the wifi MAC address.
                mBtAddress.setSummary(address.toLowerCase());
            } else {
                mBtAddress.setSummary(R.string.status_unavailable);
            }
        }
    }

 如果项目需要始终返回蓝牙的mac地址,则无需判断bluetooth.isEnabled(),直接返回即可,如下:

BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter();
String macAddress = "";
if (bluetooth != null) {
    macAddress = bluetooth.getAddress();
}

2.获取设备wifi固定mac地址

依旧是按照原生设置中获取的方式获取,这块不用修改,直接拿来用就行

final String[] macAddresses = getWifiManager().getFactoryMacAddresses();
String mac = null;
if (macAddresses != null && macAddresses.length > 0) {
    mac = macAddresses[0];
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值