IDFA 

IDFA,广告标识符,类似于这一台设备的唯一性标识符,一般提供给第三方去做一些广告的关联。

但如果用户完全 重置系统,或者 “还原位置与隐私” 这个广告标示符会重新生成。
也就是说IDFA并不是一直不变的。
 
注意:如果程序在后台运行,此时用户“还原广告标示符”,然后再回到程序中,此时获取广 告标示符并不会立即获得还原后的标示符。必须要终止程序,然后再重新启动程序,才能获得还原后的广告标示符。
 
PPS:模拟器上获取的IDFA一直都是“0000......”
 
iOS14

iOS 14之后,苹果增加了IDFA的权限控制,用户可以选择是否允许 APP 获取到 IDFA。

首先,需要在工程的 info.plist 中增加一个请求用户的IDFA权限时的提示语,key为“Privacy - Tracking Usage Description”,内容可以为“申请获取您的广告标识符用于提供更加个性化的服务”等。

iOS14之后,获取IDFA的逻辑方法也有所改变,其实“获取IDFA”的代码方法没有变,但是需要增加一层对用户授权状态的判断。如果不进行授权的相关逻辑的话,apple会返回一个“00000....”的IDFA。

重新跑代码后,在你获取IDFA时,会有弹窗向用户请求IDFA的权限。

参考以下代码:

  1. - (NSString *)getIDFAString{
  2.  
  3. __block NSString *idfa = @"";
  4.  
  5. if (@available(iOS 14, *)) {
  6. // iOS14及以上版本需要先请求权限
  7. [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
  8. // 获取到权限后,依然使用老方法获取idfa
  9. if (status == ATTrackingManagerAuthorizationStatusAuthorized) {
  10. idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];
  11. } else {
  12. NSLog(@"请在设置-隐私-跟踪中允许App请求跟踪");
  13. }
  14. }];
  15. } else {
  16. // iOS14以下版本依然使用老方法
  17. // 判断在设置-隐私里用户是否打开了广告跟踪
  18. if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {
  19. idfa = [[ASIdentifierManager sharedManager].advertisingIdentifier UUIDString];
  20.  
  21. } else {
  22. NSLog(@"请在设置-隐私-广告中打开广告跟踪功能");
  23. }
  24. }
  25.  
  26. return idfa;
  27. }
 

[iOS] 随手记录 IDFA 的一些相关内容的更多相关文章

  1. Documentum常见问题11-xplore全文检索时找不到相关内容

    最近帮助同事处理了一个关于全文检索的问题,随手记录下来供以后参考. 问题一 某些Cabinet下的文件可以全文检索到,但某些Cabinet下的数据全文检索不成功. 新建了一个Docbase-AADCT ...

  2. 使用TestFlight测试时候相关内容

    前言:记录一下使用TestFlight测试时候相关内容 场景:在我们添加测试员:给测试员发送了邀请:测试员使用TestFlight的时候,其实是有崩溃的次数的记录的,相应的崩溃的信息也是可以查询到的. ...

  3. 学习笔记之html5相关内容

    写一下昨天学习的html5的相关内容,首先谈下初次接触html5的感受.以前总是听说html5是如何的强大,如何的将要改变世界.总是充满了神秘感.首先来谈一下我接触的第一个属性是  input的里面的 ...

  4. 【Android端】【日志收集上报SDK相关内容测试的方案梳理总结】

    测试方案: 主要从几个方面关注,功能 性能 服务端策略(目前所有的这些上报收集等都会通过开关的精细化,通过接口方式将信息返回给APP端,APP端根据相关内容进行上报,因此基于此的上报机制及收集机制都需 ...

  5. Hibernate5笔记8--Hibernate事务相关内容

    Hibernate事务相关内容: (1) 事务四大特性(简称ACID): (1)原子性(Atomicity) 事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行. (2)一致性(Con ...

  6. Oracle子查询相关内容(包含TOP-N查询和分页查询)

    本节介绍Oracle子查询的相关内容: 实例用到的数据为oracle中scott用户下的emp员工表,dept部门表,数据如下: 一.子查询 1.概念:嵌入在一个查询中的另一个查询语句,也就是说一个查 ...

  7. MySQL的日志相关内容

    本篇文章介绍一下mysql的备份和日志,由于备份时需要用到日志,所以在讲备份前,如果日志内容篇幅过长,将会把日志和备份分开单独来讲,先简单介绍一下mysql的日志相关内容. MySQL日志 日志是my ...

  8. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  9. linux用户权限相关内容查看

    linux用户权限相关内容查看 1   用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...

  10. SharePoint安全 - 在Goolge和Bing中查找SharePoint相关内容

    博客地址 http://blog.csdn.net/foxdave 本篇提供两个查询串字典,分别对应Google和Bing的搜索,用来查询SharePoint网站的相关内容 Google ShareP ...

随机推荐

  1. Python TensorFlow深度神经网络回归:keras.Sequential

      本文介绍基于Python语言中TensorFlow的Keras接口,实现深度神经网络回归的方法. 目录 1 写在前面 2 代码分解介绍 2.1 准备工作 2.2 参数配置 2.3 数据导入与数据划 ...

  2. vue学习笔记(五)---- vue动画

    官方文档:https://cn.vuejs.org/v2/guide/transitions.html 一.使用过度类名 没有使用动画之前: <body> <div id=" ...

  3. 手把手教你将Eureka升级Nacos注册中心

    由于原有SpringCloud体系版本比较老,最初的注册中心使用的Eureka后期官方无升级方案,配置中心无法在线管理配置,还有实时上下线的问题,因此需要将原有系统的Eureka服务升级Nacos注册 ...

  4. 1月3日内容总结——bbs项目登陆页面和主页、个人站点页的搭建

    目录 一.登陆功能完善 验证码功能实现 单机验证码实现验证码刷新(局部刷新) 点击登陆提交数据进行校验 二.主页搭建 html代码 views.py代码 主页内容部分 后台添加数据 分页器 前端获取头 ...

  5. 12月7日内容总结——jQuery查找标签、操作标签、事件和动画效果,Bootstrap页面框架的介绍和使用讲解

    目录 一.jQuery查找标签 基本选择器 层级选择器 基本筛选器 属性选择器 表单筛选器 筛选器方法 二.操作标签 样式操作(class操作) 位置操作 尺寸 文本操作 创建标签 属性操作 文档处理 ...

  6. Python风格规范(转载)

    Python风格规范(转载) https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python ...

  7. 力扣---511. 游戏玩法分析 I

    活动表 Activity: +--------------+---------+| Column Name  | Type    |+--------------+---------+| player ...

  8. 机器学习-集成学习LightGBM

    目录 前言 介绍LightGBM LightGBM的背景和起源 LightGBM的优点和适用场景 LightGBM的基本工作原理 安装和配置LightGBM 安装LightGBM 配置LightGBM ...

  9. Ubuntu20.04获取root权限并用root用户登录

    Ubuntu20.04获取root权限并用root用户登录 转载csdn:静水流深深深! https://blog.csdn.net/qq_42372079/article/details/11758 ...

  10. Android中drawable和mipmap到底有什么区别

    欢迎通过我的个人博客来查看此文章 老项目代码中发现有的图片放到了drawable中, 有的图片放到了mipmap中, 开发时秉承哪个目录下文件多放哪里的原则, 偶尔有疑惑搜一搜文章, 看到了结论也就这 ...