編輯:關於Android編程
/**
* 獲取設備的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);
}
《AndroidStudio每日一貼》11. 重構之提煉為常量
提煉為常量是從臨時變量快速提煉出靜態常量,這也是我們常用的重構手段.操作步驟:? 菜單欄: Refactor —> Extract —>
android Splashy Flash小游戲
今年剛開始學習android,不過是做修改源碼,自己在寢室捎帶學習了下做APP,由於是剛開始學習,這個游戲只注重了游戲的實現,實現了大概功能後,也沒有實現游戲的細節,像分
Android M 動態權限獲取
新的權限獲取方式除了要求像之前版本一樣在AndroidManifest文件中靜態申請之外,應用還需根據需要請求權限,方式采用向用戶顯示一個請求權限的對話框。這些被動態申
SpannableString 的一些效果顯示
一個人需要隱藏多少秘密才能巧妙地度過一生 — 倉央嘉措前言上次看到一款學習的 App,有這樣一個功能,在一個 TextView 中有一段英文,點擊英文單詞通過