Android编程获取设备MAC地址的实现方法
本文实例讲述了Android编程获取设备MAC地址的实现方法。分享给大家供大家参考,具体如下:
/** *获取设备的mac地址 * *@paramac *@paramcallback *成功获取到mac地址之后会回调此方法 */ publicstaticvoidgetMacAddress(finalActivityac,finalSimpleCallbackcallback){ finalWifiManagerwm=(WifiManager)ac.getSystemService(Service.WIFI_SERVICE); //如果本次开机后打开过WIFI,则能够直接获取到mac信息。立刻返回数据。 WifiInfoinfo=wm.getConnectionInfo(); if(info!=null&&info.getMacAddress()!=null){ if(callback!=null){ callback.onComplete(info.getMacAddress()); } return; } //尝试打开WIFI,并获取mac地址 if(!wm.isWifiEnabled()){ wm.setWifiEnabled(true); } newThread(newRunnable(){ @Override publicvoidrun(){ inttryCount=0; finalintMAX_COUNT=10; while(tryCount<MAX_COUNT){ finalWifiInfoinfo=wm.getConnectionInfo(); if(info!=null&&info.getMacAddress()!=null){ if(callback!=null){ ac.runOnUiThread(newRunnable(){ @Override publicvoidrun(){ callback.onComplete(info.getMacAddress()); } }); } return; } SystemClock.sleep(300); tryCount++; } //未获取到mac地址 if(callback!=null){ callback.onComplete(null); } } }).start(); }
SimpleCallback是一个简单的回调接口:
publicinterfaceSimpleCallback{ voidonComplete(Stringresult); }
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android操作SQLite数据库技巧总结》、《Android数据库操作技巧总结》、《Android编程开发之SD卡操作方法汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。