目前 多家广告平台在android设备,确定设备唯一标识 使用IMEI。

国内的多家广告平台(百度,tanks ,芒果)也都在使用IMEI号作为唯一标识进行设备定向。

而 google inmobi 却在使用android id(设备号)作为唯一标识进行设备定向。

关于使用IMEI 或者 android id ,我给点自己的见解,产品和研发的同学可以参考

1 IMEI 根据sim卡 确定的编号,使用时需要app申请权限(android.permission.READ_PHONE_STATE)

IMEI依赖于运行时权限(android 6.0 之后的版本 电话权限),如果用户在安装之后关闭了这个权限,导致app异常,如果异常不进行捕获,则导致app crash。

国内很多设备是双卡设备,这样导致有些设备有两个IMEI号。通过正常程序无法获得这两个IMEI号(android不提供)。

通过android默认api 可以获取默认的一个IMEI号(不确定是哪个),但是手机插卡与否、移动网络选择 等条件的不同,可能导致我们取得的默认IMEI号不同。

可以通过反射方式获取两个IMEI号,但是不同芯片厂商的方式不同,所以目前市面上没有商家去取两个IMEI号。

2 android id 根据设备确定的编号,使用时不需要申请权限,不会导致程序异常

IMEI Android ID相关推荐

  1. 我们发现您的应用在用户同意隐私政策前申请获取用户个人信息(IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据)

    一.需求 解决应用上架问题 过度获取用户信息 我们发现您的应用在用户同意隐私政策前申请获取用户个人信息(IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据) 自"滴滴" ...

  2. android10获取imei,Android 10 root用户获取imei

    IMEI(International Mobile Equipment Identity)是国际移动设备识别码的缩写,由15-17位数字组成,与手机是一一对应的关系.无论刷机还是恢复出厂设置,该设备标 ...

  3. Android @id和@+id 以及 @android:id 的区别

    昨天突然有新来的同事问我这个@id 和@+id 的区别 ,为什么 我们的项目都是@id 自己新增的ui 使用的@+id 这里说下我的简单的回复项目是维护的之前的是为了统一管理使用了@id  方便修改 ...

  4. 关于android:id=@+id/xx的理解

    之前学习android的时候,对android:id="@+id/xx"总感觉混淆,不理解,刚看了一篇文章.现在貌似是恍然大悟.故做了一下笔记,希望帮助有共同问题的人... and ...

  5. Android @id和@+id区别

    Android中的组件需要用一个int类型的id属性值来表示.id属性只能接受资源类型的值,也就是必须以@开头的值,例如,@id/abc.@+id/xyz等.如果在@后面使用"+" ...

  6. android @id和@+id的区别

    今天,简单讲讲android里关于@id和@+id的区别. 之前,自己在布局里无论什么情况都使用@+id,可是后来发现有些代码用的是@id,自己不知道这两者之间有什么区别.于是就在网上查找资料,最终是 ...

  7. android:id=@android:id/tabhost 、android:id=@+id/llRoot 、android:id=@id/llRoot 之间的区别...

    由于快要放暑假了,所以最近这俩周把Android方面的知识复习一下,准备找个实习工作. 顺便把自己的总结更大家分享一下,共同进步,谢谢.... 一. android:id="@android ...

  8. android:id=@android:id/list,Logcat错误 - 内容必须有一个ListView的id属性是'android.R.id.list'...

    我的列表视图显示这样的错误我在我的问题中提到的事件,尽管我在mainactivity中提到扩展listactivity也和我的布局我把尽可能的ListViewLogcat错误 - 内容必须有一个Lis ...

  9. [Android]Android布局文件中的android:id=@*属性使用方法汇总以及介绍

    由于项目需要进行Android开发,因此一边开发,一边查阅资料,一边总结了Android布局文件中android:id="@*"属性的使用方法汇总以及介绍.id资源的引用 andr ...

最新文章

  1. php web目录结构,目录结构
  2. 人工智能之基于face_recognition的人脸检测与识别
  3. 博客园里输入latex公式
  4. ×××数据库导数据ora-01400错误小计
  5. Linux命令行下”!”的用法
  6. KinectFusion: Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera
  7. 安全防御——防病毒网关
  8. 史上最简单的word文档docx文档解密方法,忘记word文档docx密码怎么办?
  9. 软件开发之计划阶段: ”声控打鼓”游戏的”用户/场景”分析
  10. NYOJ 71 独木舟上的旅行
  11. JavaFX:集成MarkDown
  12. 地质勘查土质分类图片_地质土质分类
  13. DM8数据守护(Data Watch) 实时主备环境搭建与管理
  14. react-player一个很好用的直播组件,可以播放视频等等
  15. 英国大不列颠百科全书_大不列颠计划通过社区编辑接受维基百科
  16. CP.26对称矩阵及正定性
  17. oracle怎么u盘启动,用U盘安装Oracle Linux 6.2
  18. 【狮子数学】04函数极限的计算
  19. Python+selenium 操作谷歌浏览器实例
  20. 【考研经验】2018中南大学计算机考研经验分享

热门文章

  1. css溢出隐藏显示指定行数
  2. [DAX] SWITCH函数
  3. mysql分区表_MySQL分区分表
  4. 正交投影、弱透视投影和透视投影
  5. KMS激活windows 2008序列号
  6. 使用Vue.js将您的静态SVG图纸转换为交互式小部件和信息图表
  7. 使用junit进行多线程并发测试
  8. 【基于容器的部署、扩展和管理】3.6 集群监控和日志收集
  9. 可以使用在很多场景的7个重要回归分析法
  10. Java反射的作用与原理