感谢该作者提供的方法。http://blog.csdn.net/langzi7758521/article/details/52575724

之前项目都是获取imei码,遇到的麻烦就是要权限或者某些机器,返回垃圾数据。。
现在,更换方案,使用MAC地址来作为唯一的设备码。
由于获取mac码需要设备开启过WiFi,若从未开启过,则返回空。
所以,思路就是。在获取MAC地址之前先判断当前WiFi状态,若开启了Wifi,则直接获取MAC地址,若没开启Wifi,则用代码开启Wifi,然后马上关闭,再获取MAC地址。

目前此方法测试成功,无论在哪种状态下都能正确取得设备的MAC地址(包括开机后未启动过Wifi的状态下),且在未开启Wifi的状态下,用代码开启Wifi并马上关闭,过程极短,不会影响到用户操作。

代码如下:


public String getMacAddress() {String macAddress =null;WifiManager wifiManager =(WifiManager)MyApplication.getContext().getSystemService(Context.WIFI_SERVICE);WifiInfo info = (null== wifiManager ?null: wifiManager.getConnectionInfo());if(!wifiManager.isWifiEnabled()){//必须先打开,才能获取到MAC地址wifiManager.setWifiEnabled(true);wifiManager.setWifiEnabled(false);}if(null!= info) {macAddress = info.getMacAddress();}returnmacAddress;
}

安卓获取手机唯一设备号相关推荐

  1. 获取安卓手机唯一设备号

    /** * 获取设备UUID */ private String getMyUUID() { final TelephonyManager tm = (TelephonyManager) getBas ...

  2. 安卓获取手机唯一码工具类

    Android手机,唯一码,有时候作为手机的唯一标示,要在程序中获取.但安卓手机因为厂家多,等原因,对于所有的安卓手机及pad,没有一个稳定可靠的手机标示码可以100%获得. 本文提供了一个解决方案, ...

  3. android 获取serialno_[Android]关于Android 唯一设备号(ro.serialno)

    1.ro.serialno不存在于任何属性文件,比如build.prop, default.prop等,而是在/system/core/init/init.c里由ro.boot.serialno 转换 ...

  4. 安卓获取手机视频和图片

    安卓获取手机视频和图片 获取手机本地视频 首先需要获得手机内存权限 在AndroidManifest.xml中添加代码,获得读取权限 android.permission.READ_EXTERNAL_ ...

  5. 获取手机的设备信息和唯一ID

    1.获取手机基本信息 参考:https://blog.csdn.net/wjky2014/article/details/109733589 一.获取手机基本信息(厂商.型号等参数) 二.设备信息获取 ...

  6. Android获得手机唯一设备ID号

    在安卓的工程中,往往需要获得手机设备唯一的ID号,在这个我们可以用TelephonyManager类来获得: 首先声明一个TelephonyManager类的对象: private Telephony ...

  7. 获取手机唯一标识插件_H5能获取到手机设备ID或者手机浏览器唯一识别码吗

    content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no"> JS获取手机型 ...

  8. php 获取移动端设备号,getDeviceId()获取设备号IMEI、MEID、ESN

    网络请求的时候需要根据设备号id传参,但是服务端后台收到的有时候为空,服务端的存储就为1个0 .而手机设备号获取与手机本身注册的网相关 本人经测试情况魅蓝note5.1:全网通.2张联通卡.获取结果为 ...

  9. android 获取手机唯一识别码

    //如果获取不到imsi号,就拼接其它信息获取唯一码: 结论是,依然有部分手机获取不到. final TelephonyManager tm = (TelephonyManager) getBaseC ...

最新文章

  1. mysql函数(五.流程控制函数)
  2. vue项目使用大华摄像头怎样初始化_Vue接入监控视频技术总结
  3. golang(2):beego 环境搭建
  4. 基于Tensorflow + Opencv 实现CNN自定义图像分类
  5. linux centeros下Redis的安装
  6. 小程序二维码需要发布正式版后才能获取到_IOS14.3正式版发布时间12月15日:苹果ios14.3正式版内容一览[多图]-游戏产业...
  7. 拿下宝马中国量产订单的四维图新,如何在自动驾驶地图领域内外兼修?
  8. Apache访问localhost页面403Forbidden
  9. 自定义控件之圆形的image
  10. 【元胞自动机】基于matlab元胞自动机求解城市小区开放对周边道路通行影响研究【含Matlab源码 233期】
  11. SaaS商城是什么,赢利点在哪儿?
  12. mac 强制关闭程序
  13. 雪花算法-java实现
  14. 华为面试题(小朋友高矮排序,要求移动距离最小)-java版
  15. 使用netstat查看tcp连接、udp连接
  16. 用了这个,我追到了自己的女神:Mac版QQ半自动发送情话
  17. 2.Scala的安装和使用方法(华为云学习笔记,Spark编程基础,大数据)
  18. 前端路线--JS高阶(day03)
  19. 【Skynet 游戏排行榜实现】
  20. 群联PS3109固态硬盘掉固件识别为20M问题原因及解决方法

热门文章

  1. android 手机美化
  2. 轻量级网络EdgeViTs论文翻译
  3. C语言 while语句中的break与continue
  4. HTC G21刷机具体教程 通过recovery程序刷入
  5. 程序员被女朋友拉黑之后...这是我见过最“科学”的方法
  6. 使用快启动一键重装系统详细图文教程
  7. 2020年北邮计算机专业分数线,2020北京邮电大学研究生分数线一览表(含2018-2019历年复试)...
  8. 放苹果(C语言 递归)
  9. mysql模板引擎_MYSQL存储引擎解释
  10. 数学建模——lingo实现多目标规划