我如何获取MAC地址android 7.0

穆罕默德·阿里·贝哈贾利(Mohamed Ali Belhajali)

我无法获取mac地址,有人可以帮我吗,我是android开发的新手,请帮助我 manifest.xml

    <receiver
        android:name="com.example.v3rlu.authentification.DeviceAdmin"
        android:permission="android.permission.BIND_DEVICE_ADMIN">
        <meta-data android:name="android.app.device_admin"
            android:resource="@xml/xml" />
        <intent-filter>
            <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
            <action android:name="android.app.action.ACTION_DEVICE_ADMIN_DISABLE_REQUESTED" />
            <action android:name="android.app.action.ACTION_DEVICE_ADMIN_DISABLED" />
        </intent-filter>
    </receiver>

启动活动检查

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_check);
    mac=(TextView) findViewById(R.id.textView) ;
    DeviceAdminReceiver admin = new DeviceAdminReceiver();
    DevicePolicyManager devicepolicymanager = 
    admin.getManager(getApplicationContext());
    ComponentName name1 = admin.getWho(getApplicationContext());
    if (devicepolicymanager.isAdminActive(name1)){
        mac_address = devicepolicymanager.getWifiMacAddress(name1);}

mac.setText(mac_address);
}}

对于接收器类,我从android网站获得了代码

文卡特什·库马尔

试试这个。

public String getMacAddr() {
    try {
        List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
        for (NetworkInterface nif : all) {
            if (!nif.getName().equalsIgnoreCase("wlan0")) continue;

            byte[] macBytes = nif.getHardwareAddress();
            if (macBytes == null) {
                return "";
            }

            StringBuilder res1 = new StringBuilder();
            for (byte b : macBytes) {
                //res1.append(Integer.toHexString(b & 0xFF) + ":");
                res1.append(String.format("%02X:",b));
            }

            if (res1.length() > 0) {
                res1.deleteCharAt(res1.length() - 1);
            }
            return res1.toString();
        }
    } catch (Exception ex) {
    }
    return "";
}

在清单中添加互联网许可

<uses-permission android:name="android.permission.INTERNET"/>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何获取0计数的最近7天记录

如何修改keras模型以获取0到7之间的输出(仅0和1除外)?

在哪里可以获取centOS 7的pxelinux.0?

如何获取centos 7 vm的IP地址?

如何获取我的Android蓝牙设备的ID或MAC地址?

ethtool获取永久MAC地址返回全0

Android Navigation Drawer:未找到 ID 0x7f0d0084 的视图

如何从包含0值的SQL中获取最近7天的总和

如何调试线程1的问题:EXC_BAD_ACCESS(代码=2,地址=0x7ffee1ba8578)

Java 7中0_0的含义

STM32H7 银行交换中断在地址 0x81006fe

我的 Linux 安装自己变砖了(ACPI,无法获取大小:0x800000000000000e 和 PKCS#7)

在Android Run上获取错误:android.content.res.Resources $ NotFoundException:资源ID#0x7f080058

reg [7:0] a [3:0] 和 reg [7:0] a [0:3] 有什么区别

如何独立获取docker0 ip地址平台

如何从python中的地图对象(<map at 0x7f8adefd7c50>)获取二进制值?

如果特定日期没有值返回0,如何在mysql中获取最近7天的记录

gdb中的“目标记录已满”会使printf上的“ n”命令失败,并带有“进程记录不支持地址0x7ffff7dee6e7的指令0xc5”吗?

Python这意味着<对象位于0x7fab7fc80c50>是什么,我该如何解析它?

如果尚不为0,我该如何写一个function以加7并减2

我如何设计一个以1开始并以0(1,2,3,4,5,6,7,8,9,0)结束的int循环

为什么我的函数返回“函数___在0x7f37c058d378”?

在ARMv7中,是TTBR0和TTBR1物理或虚拟地址中使用的地址

如何从两个字节中取出一个Long?0x7 + 0x86 = 0x1c000

android.content.res.Resources $ NotFoundException:资源ID#0x7f07006e

android.content.res.Resources $ NotFoundException:资源ID#0x7f060052

IllegalArgumentException:找不到ID为0x7f07004e android的视图

Android Resource无法找到资源ID#0x7f070024

Android App无法读取0x7F之后的值