Android 系统ID介绍
Android上系统ID有很多,本文只介绍常用的ANDROID ID、DEVICE ID、IMEI/MEID、WIFI/BT ADDRESS等几个,本文介绍这些ID的数据格式、长度及一些基本知识。
一、DEVICE_ID
DEVICE_ID是设备ID标识,用于唯一标识设备,这个ID似乎并非是独立的一串数字,而会由于终端的硬件配置不同,所取到的结果不同。
比如GSM手机DEVICE_ID可能是IMEI号,CDMA手机可能是MEID,不带MODEM的手机可能会返回NULL,也可能返回其它唯一值,比如MAC地址等。
二、MAC ADDRESS
MAC ADDRESS有两种:Wifi和BT,在设备出厂时分别独立设置。MAC地址共48位(6个字节),十六进制表示。前24位由IEEE决定如何分配,后24位由实际生产该网络设备的厂商自行指定。
MAC地址存储位置(WIFI): /sys/class/net/wlan0/address
三、ANDROID_ID
ANDROID_ID是Android系统第一次启动时产生的一个64bit(16BYTES)数,如果设备被wipe还原后,该ID将被重置(变化)。
四、CPU ID
CPU ID一般存储在/proc/cpuinfo中,该文件包含核心版本、型号、频率等信息。
更多关于系统信息可到/proc下查找,比如/proc/version、/proc/meminfo、/proc/version等。
五、IMEI/MEID和IMSI
IMEI/MEID都是面向具备手机功能的设备才有的设备识别号码。IMSI也叫订阅号Subscriber ID。IMSI和IMEI/MEID联合登录网络,由GSM/3G网络负责映射为我们的手机号。相关获取及管理工作可参考Android TelephonyManager部分。
此外,还有Google Service Framework(GSF ID KEY)、等ID标识,一般都是专用途,并不建议开发者随意去获取这些ID信息。
另,Google Play上有一些小软件可以查看此类信息,当然这些信息大部分都是涉及到用户隐私问题,如果说大量的Android市场程序(包括Windows Phone大部分应用也有此恶行)收集DEVICE_ID作为应用推广统计的话还还情有可原,那么大量要求访问通讯录、短信等权限要求基本都属于鄙劣行为,这严重侵害用户的利益,当然这也是当前网站把消费者向手机终端引导的一个主要目的。因为他们可以无限制的使用通话、通信录和短信功能,而在电脑上商家却没有任何办法。
天缘认为,此类涉及到用户订阅、发短信、拨打电话等行为,都应该建议用户手动去操作才对,而不是程序代为执行此类操作,大部分恶意软件很是忠于此行。
参考资料:
http://blog.csdn.net/billpig/article/details/6728573
http://zh.wikipedia.org/zh-cn/MAC%E5%9C%B0%E5%9D%80
http://stackoverflow.com/questions/2785485/is-there-a-unique-android-device-id
http://blog.csdn.net/guang_toad/article/details/10134939
http://blog.codepainters.com/2010/09/06/android-emulator-and-the-sim-card-serial-number/
http://www.metsky.com/archives/668.html
Android 系统ID介绍的更多相关文章
- Android系统框架介绍
src目录:主要是完成java代码的编写 assets目录:资源目录 res目录:存在图片,布局文件和字符串.菜单等文件 bin目录:输出文件夹,如生成的APK文件 project,propertie ...
- Android系统架构剖析(一)
要说剖析,可能这个词可能用的太大了,以下对Android系统的介绍也就是从我个人理解来说吧. 以前有人问我,Android是什么?当时这个问题问的我真的蒙了,我就简单的回了一下 ...
- Android系统研究资料收集---站在前人的肩膀上
Android系统研究资料收集---站在前人的肩膀上 针对Android系统研究任务,收集高价值资料在本页更新 AuthBlog:秋城https://www.cnblogs.com/houser032 ...
- Android系统中的广播(Broadcast)机制简要介绍和学习计划
在Android系统中,广播(Broadcast)是在组件之间传播数据(Intent)的一种机制:这些组件甚至是可以位于不同的进程中,这样它就像Binder机制一样,起到进程间通信的作用:本文通过一个 ...
- Android系统架构说明介绍
Android系统架构说明介绍 Android系统架构和一些普遍的操作系统差不多,都是采用了分层的架构,从他们之间的架构图看,Android系统架构分为四个层,从高层到低层分别是应用程序层.应用程序框 ...
- [转]Android系统Surface机制的SurfaceFlinger服务简要介绍和学习计划
转自:Android系统Surface机制的SurfaceFlinger服务简要介绍和学习计划 前面我们从Android应用程序与SurfaceFlinger服务的关系出发,从侧面简单学习了Surfa ...
- Android系统Surface机制的SurfaceFlinger服务简要介绍和学习计划
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8010977 前面我们从Android应用程序与 ...
- Android系统编程入门系列之应用环境及开发环境介绍
作为移动端操作系统,目前最新的Android 11.0已经发展的比较完善了,现在也到了系统的整理一番的时间,接下来的系列文章将以Android开发者为中心,争取用归纳总结的态度对初级入门者所应 ...
- Android 系统架构 和 各个版本代号介绍
一.Android 系统架构: 1. linux内核层Android 基于Linux内核,为Android设备的各种硬件提供底层驱动 比如: 显示驱动.音频.照相机.蓝牙.Wi-Fi驱动,电源管理等 ...
随机推荐
- 解决 Virtual Box 启动 Cannot load R0 module supLoadModule returned VERR_LDR_MISMATCH_NATIVE Failed to register ourselves as a PCI Bus (VERR_MODULE_NOT_FOUND)
返回 代码:E_FAIL (0x80004005)组件:Console界面:IConsole {8ab7c520-2442-4b66-8d74-4ff1e195d2b6} 原因: 我新建了一个vdi文 ...
- csuoj 1114: 平方根大搜索
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1114 1114: 平方根大搜索 Time Limit: 5 Sec Memory Limit: ...
- 旋转toast 自定义toast方向,支持多个方向的显示,自定义View
package com.example.canvasdemo; import java.security.InvalidAlgorithmParameterException; import andr ...
- 17. 星际争霸之php设计模式--职责链模式
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- 更快的方式实现PHP数组去重
数组去重的几种快捷方式: 1.//创建一个包含重复值的,一共四个元素的数组 $array = array('green','blue','orange','blue'); // 翻转数组,你将会 ...
- 最近在学习bootstrap的时候用bootstrap的视频教程2.0的引用bootstrap3.0突然发现很多不同,总结了一下
bootstrap 2.3版与3.0版重要类的改变对比 Bootstrap 2.x Bootstrap 3.0 .container-fluid .container .row-fluid .row ...
- web前端本地测试方法
在大型项目中的前端测试与开发,通常使用git clone将整个工程目录下载下来,然后本地运行调试. 然而,当一个项目已经发布到测试机上,需要临时查看某个页面的效果或修改某个页面时,clone整个工程目 ...
- windows+caffe(一)——自己环境
环境:win7 旗舰版升级到sp1 虚拟机 无GPU vs2013 matlab2016a python2.7 安装caffe已经成功 安装过程见我的另一篇:http://www.cnblogs.co ...
- 结合Apache和Tomcat实现集群和负载均衡 JK 方式
本文基本参考自 轻松实现Apache,Tomcat集群和负载均衡,经由实操经历记录而成,碰到些出入,以及个别地方依据个人的习惯,所以在一定程度上未能保持原文的完整性,还望原著者海涵. 因原文中有较多的 ...
- HTML5正则表单式验证电子邮件
<input type="text" title="email" required pattern="[^@]+@[^@]+\.[a-zA-Z] ...