android 获取设备的mac地址,Android编程获取设备MAC地址的实现方法
本文實例講述了Android編程獲取設(shè)備MAC地址的實現(xiàn)方法。分享給大家供大家參考,具體如下:
/**
* 獲取設(shè)備的mac地址
*
* @param ac
* @param callback
* 成功獲取到mac地址之后會回調(diào)此方法
*/
public static void getMacAddress(final Activity ac, final SimpleCallback callback) {
final WifiManager wm = (WifiManager) ac .getSystemService(Service.WIFI_SERVICE);
// 如果本次開機后打開過WIFI,則能夠直接獲取到mac信息。立刻返回數(shù)據(jù)。
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是一個簡單的回調(diào)接口:
public interface SimpleCallback {
void onComplete(String result);
}
希望本文所述對大家Android程序設(shè)計有所幫助。
總結(jié)
以上是生活随笔為你收集整理的android 获取设备的mac地址,Android编程获取设备MAC地址的实现方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql workbench 闪电_M
- 下一篇: android sina oauth2.