Android编程获取设备MAC地址的实现方法
本文实例讲述了Android编程获取设备MAC地址的实现方法。分享给大家供大家参考,具体如下:
/** * 获取设备的mac地址 * * @param ac * @param callback * 成功获取到mac地址之后会回调此方法 */ public static void getMacAddress(final Activity ac, final SimpleCallback callback) { final WifiManager wm = (WifiManager) ac .getSystemService(Service.WIFI_SERVICE); // 如果本次开机后打开过WIFI,则能够直接获取到mac信息。立刻返回数据。 WifiInfo info = wm.getConnectionInfo(); if (info != null && info.getMacAddress() != null) { if (callback != null) { callback.onComplete(info.getMacAddress()); } return; } // 尝试打开WIFI,并获取mac地址 if (!wm.isWifiEnabled()) { wm.setWifiEnabled(true); } new Thread(new Runnable() { @Override public void run() { int tryCount = 0; final int MAX_COUNT = 10; while (tryCount < MAX_COUNT) { final WifiInfo info = wm.getConnectionInfo(); if (info != null && info.getMacAddress() != null) { if (callback != null) { ac.runOnUiThread(new Runnable() { @Override public void run() { callback.onComplete(info.getMacAddress()); } }); } return; } SystemClock.sleep(300); tryCount++; } // 未获取到mac地址 if (callback != null) { callback.onComplete(null); } } }).start(); }
SimpleCallback是一个简单的回调接口:
public interface SimpleCallback { void onComplete(String result); }
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android操作SQLite数据库技巧总结》、《Android数据库操作技巧总结》、《Android编程开发之SD卡操作方法汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
相关文章
基于Android studio3.6的JNI教程之helloworld思路详解
这篇文章主要介绍了基于Android studio3.6的JNI教程之helloworld,本文通过图文实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-03-03Flutter框架解决盒约束widget和assets里加载资产技术
这篇文章主要为大家介绍了Flutter框架解决盒约束widget和assets里加载资产技术运用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-12-12android调用国家气象局天气预报接口json数据格式解释
平时我们在开发的过程中有时会要用到天气预报的信息,国家气象局为我们提供了天气预报的接口,只需要我们去解析就行了。很方便很好用2013-11-11
最新评论