设为首页 加入收藏

TOP

读取Android设备的MAC地址
2014-11-24 07:46:10 来源: 作者: 【 】 浏览:0
Tags:读取 Android 设备 MAC 地址

AndroidMACTask.java


package com.csdn.android.util;


import android.os.AsyncTask;
import android.os.AsyncTask.Status;
import com.csdn.android.datamanage.module.LicenseCheck;


public class AndroidMACTask
{
private static boolean mInit=false;


public static void checkDeviceMac(boolean isOk)
{
if(mInit)
{
return;
}
mInit=true;
//获取失败,则进入子线程重新获取
if(!isOk)
{
//初始化Mac地址
if(mInitMacTask==null || mInitMacTask.getStatus() == Status.RUNNING ||mInitMacTask.getStatus() == Status.FINISHED)
{
return;
}
mInitMacTask.execute();
}
//获取成功,并且从缓存获取
else if(AndroidUtil.isReaderMACCache())
{
//读取设置Mac地址
if(mReaderMacFromDeviceTask==null || mReaderMacFromDeviceTask.getStatus() == Status.RUNNING ||mReaderMacFromDeviceTask.getStatus() == Status.FINISHED)
{
return;
}
mReaderMacFromDeviceTask.execute();
}
}

//读取MAC地址任务
private static AsyncTask mInitMacTask = new AsyncTask(){


@Override
protected Void doInBackground(Void... params)
{
boolean isOk = AndroidUtil.initMACdoInBackground();
//假如获取MAC成功,并且设备是通过MAC授权,则重新初始化授权
if(isOk && AndroidUtil.isReaderMac())
{
LicenseCheck.updateCacheState(FrameHelper.getAppContext(), false);
}
return null;
}};

//读取MAC地址任务
private static AsyncTask mReaderMacFromDeviceTask = new AsyncTask(){


@Override
protected Void doInBackground(Void... params)
{
String mac = AndroidUtil.getMacFromDeviceInBackground();
//假如设备不是通过MAC授权的,则把物理地址放到缓存
if(!AndroidUtil.isReaderMac())
{
AndroidUtil.saveMacInfo(mac);
return null;
}
//MAC缓存地址同物理地址
if(AndroidUtil.getMAC().equals(mac))
{
AndroidUtil.saveMacInfo(mac);
return null;
}
//MAC物理地址不同与缓存地址,重新初始化
AndroidUtil.saveMacInfo(mac);
LicenseCheck.updateCacheState(FrameHelper.getAppContext(), false);
return null;
}};

}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android程序开发中关于设置全屏无.. 下一篇Android 仿QQ多级列表框实现【源..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·PostgreSQL 索引 - (2025-12-25 22:20:43)
·MySQL Node.js 连接 (2025-12-25 22:20:41)
·SQL 撤销索引、表以 (2025-12-25 22:20:38)
·Linux系统简介 (2025-12-25 21:55:25)
·Linux安装MySQL过程 (2025-12-25 21:55:22)