全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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  # 获取  # 设备  # MAC地址  # Android手机获取Mac地址的几种方法  # Android获得设备状态信息、Mac地址、IP地址的方法  # Android 获取蓝牙Mac地址的正确方法  # 解决Android 6.0获取wifi Mac地址为02:00:00:00:00:00问题  # Android手机获取Mac地址的方法  # Android开发获取手机Mac地址适配所有Android版本  # 操作技巧  # 回调  # 是一个  # 进阶  # 相关内容  # 感兴趣  # 给大家  # 后会  # 更多关于  # 所述  # 开过  # 程序设计  # 操作方法  # 编程开发  # 则能  # 讲述了  # getMacAddress  # final  # Activity  # public 


相关文章: 如何用花生壳三步快速搭建专属网站?  如何通过商城免费建站系统源码自定义网站主题?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  官网网站制作腾讯审核要多久,联想路由器newifi官网  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  Android使用GridView实现日历的简单功能  香港服务器建站指南:免备案优势与SEO优化技巧全解析  装修招标网站设计制作流程,装修招标流程?    简历在线制作网站免费,免费下载个人简历的网站是哪些?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  网站网页制作专业公司,怎样制作自己的网页?  如何在VPS电脑上快速搭建网站?  如何通过WDCP绑定主域名及创建子域名站点?  建站之星如何优化SEO以实现高效排名?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  建站之星安装失败:服务器环境不兼容?  Swift中switch语句区间和元组模式匹配  如何零成本快速生成个人自助网站?  公司门户网站制作流程,华为官网怎么做?  电商网站制作公司有哪些,1688网是什么意思?  如何基于云服务器快速搭建网站及云盘系统?  如何在阿里云部署织梦网站?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  如何在Golang中使用replace替换模块_指定本地或远程路径  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  北京专业网站制作设计师招聘,北京白云观官方网站?  如何解决ASP生成WAP建站中文乱码问题?  定制建站价位费用解析与套餐推荐全攻略  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  淘宝制作网站有哪些,淘宝网官网主页?  如何在搬瓦工VPS快速搭建网站?  建站主机如何选?高性价比方案全解析  建站之星如何实现五合一智能建站与营销推广?  高端建站三要素:定制模板、企业官网与响应式设计优化  如何通过西部数码建站助手快速创建专业网站?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  定制建站流程步骤详解:一站式方案设计与开发指南  平台云上自主建站:模板化设计与智能工具打造高效网站  如何快速选择适合个人网站的云服务器配置?  Android自定义listview布局实现上拉加载下拉刷新功能  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  如何快速搭建自助建站会员专属系统?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  如何用PHP快速搭建高效网站?分步指南  已有域名如何快速搭建专属网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。