IDFA全称:identifierForIdentifier。中文解释为:广告标示符IDFA是iOS 6中另外一个新的方法,advertisingIdentifier是新框架AdSupportframework的一部分。广告标示符是由系统存储着的。不过即使这是由系统存储的,但是有几种情况下,会重新生成广告标示符。1、用户完全重置系统((设置程序 -> 通用 -> 还原 -> 还原位置与隐私) ,这个广告标示符会重新生成。2、用户明确的还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符) ,那么广告标示符也会重新生成。针对广告标示符用户有一个可控的开关“限制广告跟踪”。这个开关是一个简单的boolean标志,当将广告标示符发到任意的服务器端时,你最好判断一这个值,然后再做决定。示例: 1E2DFA89-496A-47FD-9941-DF1FC4E6484A。
双11剁手后,我静静的限制了广告追踪。今年双11爆了,据统计,全天交易额1207亿,移动端占比82%,在马云的持续教育和移动端的爆发下,用户在移动端消费的习惯已经不可逆转!然而,另外一个大家无法忽视的问题就是:个人隐私。我在《App推广实战(含ASO)》视频课程中详细介绍过这个话题,里面提到了移动用户的网络身份z这个概念,有兴趣的可以点击链接深入了解。假如没有网络身份z,那么每个商家(App)只能基于自己的账号体系标识用户,并记录用户的行为。而有了统一的网络身份z之后,各个商家之间的数据就可以打通了,天猫不仅知道用户A在淘宝系的购物数据,也能了解到该用户在社交网络的行为,以及旅游的喜好,等等。大家可以想象一下,随着时间的推移,用户在移动端的行为数据越积越多,用户就会变得越来越像透明人,除非换手机,几乎没有任何办法去抵御这个科技带来的负面效应。只有一个例外,苹果!苹果的特立独行体现在诸多方面,用户隐私就是其中之一。苹果为了保护用户隐私,早在2012年就不再允许其生态中的玩家获取用户的唯一标识符,但是商家在移动端打广告的时候又希望能监控到每一次广告投放的效果,因此,苹果想出了折中的办法,就是提供另外一套和硬件无关的标识符,用于给商家监测广告效果,同时用户可以在设置里改变这串字符,导致商家没有办法长期跟踪用户行为。这个就叫做广告标识符(IDFA),设置路径是“设置->隐私->广告->还原广告标识符”。
12年9月份iOS6发布,IDFA面世,用于给开发者跟踪广告的投放效果。
App中开通广告、或使用第三方SDK(如新浪微博登录|分享、友盟统计)、或uni-app使用uni统计,为了保证功能的完整性建议应用开启使用IDFA标识。
在manifestjson文件的“App常用其它设置”中可勾选开启(注意HBuilderX24以上为默认勾选)
需提交云端打包生效
开启后,云端打包会有提醒
友盟统计SDK需要开启idfa
即使没有勾选IDFA,只要使用了 友盟统计 则会自动开启IDFA。
开启IDFA后提交AppStore时需将“此App是否使用广告标识(IDFA)”选择项中勾选“是”,如下图所示:
开启IDFA不影响AppStore审核
目前没有封装5+ API获取idfa标识,可以通过nativejs获取:
参考Uni插件示例: >
一:总览
iOS设备标识码
1、 device ID
2、 IMEI :iOS5之后被禁止,写在主板上,不会变化。
3、 IDFA :Identifier For Advertising,iOS独有的广告标识符。但是用户可以更改,不适用于做唯一标识。系统重置、在设置里还原广告标识符,都会更改IDFA。
IDFA是一串16进制的32位串。
IDFA是苹果iOS 6开始新增的广告标识符,英文全称是Identifier for Advertising,用于给开发者跟踪广告效果用的,可以简单理解为iPhone的设备临时身份z号,是说临时身份z号,是因为IDFA允许用户更换。iOS用户可以通过(设置-通用-还原-还原位置与隐私)更换IDFA。iOS10系统提供用户禁止广告跟踪功能,用户勾选了这个功能后,应用程序讲无法取读到设备的IDFA。
IDFA是目前苹果生态广告交易的主要标识,一般跟广告商 交易一个用户后,广告商 需要给你提供用户的 IDFA作为凭证。主流的广告平台广点通、新浪粉丝通对账都是基于IDFA的
4、 MAC地址 :硬件标识符,包括WiFi mac地址和蓝牙mac地址。iOS 7 之后被禁止(同时禁止的还有OpenUDID)。
MAC地址在网络上用来区分设备的唯一性,接入网络的设备都有一个MAC地址,他们肯定都是不同的,是唯一的。一部iPhone上可能有多个MAC地址,包括WIFI的、SIM的等,但是iTouch和iPad上就有一个WIFI的,因此只需获取WIFI的MAC地址就好了,也就是en0的地址。MAC地址就如同我们身份z上的身份z号码,具有全球唯一性。但在iOS7之后,如果请求Mac地址都会返回一个固定值。
5、 UDID :用来标示设备的唯一性 。iOS 6 之后被禁止获取系统原生的UDID,但可以通过uuid,写入到钥匙串中,从而获得自定义的UDID(非系统原生),即使用户重装APP,只要每次都取这个钥匙串返回,就是不变的。
UDID是由40个字符的字母和数据组成
Unique Device Indentifier,用户不能更改,适合做唯一标识。但是苹果禁止应用获取UDID。
6、 UUID :APP重装后会变化
Android设备标识码
1、 Device ID 又叫做设备ID,可以用系统提供的TelephonyManager服务来获取,具有唯一性。其中又包括IMEI和MEID/ESN。
2、 IMEI :GSM设备返回的,并且是写在主板上的,重装APP不会改变IMEI。Android 60以上系统需要用户授予read_phone_state权限,如果用户拒绝就无法获得。
3、 MAC地址 :硬件标识符,包括WiFi mac地址和蓝牙mac地址。Android 60之后被禁止,若获取则会被判定为有害应用。
4、 MEID/ESN :CDMA设备返回的,一般不使用。
5、 UDID :用来标示设备的唯一性。获取UUID后,写入so文件生成UDID。即使APP重装,值也不变,除非root手机(普通用户做不到)
6、 UUID :APP重装之后会改变
---未整理完,待续---
IMEI:International Mobile Equipment Identity,国际移动设备身份码的缩写。是由15位数字组成的“电子串号”,它与每台手机一一对应,每个IMEI在世界上都是唯一的。
UDID:Unique Device Identifier,唯一设备标识码。
UUID:Universally Unique Identifier,通用唯一识别码。目前最广泛应用的UUID,是微软公司的全局唯一标识符GUID。其目的是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。
分别对我的项目中和ShareSDK里面进行了检查:
(1)、在 App 内投放广告 服务应用中的广告。如果你的应用中集成了广告的时候,你需要勾选这一项。
(2)、将此 App 安装归因于先前投放的特定广告 跟踪广告带来的安装。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件,但是应用里并没有展示广告你需要勾选这一项。
(3)、将此 App 中发生的 *** 作归因于先前投放的特定广告 跟踪广告带来的用户的后续行为。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件。
(4)、iOS 中的“限制广告跟踪”设置 这一项下的内容其实就是对你的应用使用 IDFA 的目的做下确认,只要你选择了采集 IDFA,那么这一项都是需要勾选的。
(1)、如果你的应用里只是集成了广告,不追踪广告带来的激活行为,那么选择1和4;
(2)、如果你的应用没有广告,而又获取了IDFA。建议选择2和4;
依赖: AdSupportframework
系统支持: iOS6及以上系统
获取方式: [ASIdentifierManager sharedManager]advertisingIdentifierUUIDString
定义: 由数字和字母组成的用来标识唯一设备的字符串。
特点:
依赖: UIKitframework
系统支持: iOS6及以上系统
获取方式: [UIDevice currentDevice]identifierForVendorUUIDString
定义: 由数字和字母组成的用来标识唯一设备的字符串。
特点: 根据vendor的值,如果vendor相同,则返回同一字符串;如果vendor不同,则返回不同的字符串。
vendor解释: 英文解释为卖家,小贩。根据xcode文档解释,正常情况下,会根据App Store提供的数据进行判断。但是如果app不是通过app store进行安装的(如企业应用或开发调试阶段),那么会根据bundle ID判断。
判断准则:
CocoaChina里的这文章里讲的更细更全,有兴趣的可以了解
在iOS5之前,获取设备唯一标识都是采用UDID。
12年9月份iOS6发布,IDFA面世,用于给开发者跟踪广告的投放效果。
一直到13年5月份App Store明令禁止获取UDID的应用上架,但是人们也找到了其他方法,比如:获取Mac地址和OpenUDID。
再到13年9月份iOS7的发布,苹果又采取别的措施,获取到的Mac地址在iOS7上都是相同的值,并且对剪贴板进行限制,导致OpenUDID无法被不同的应用共享相同的值。
最后IDFA成为了目前为止苹果跟踪广告的主要标识。
2017929
但是,这个值 不是唯一确定的! 也就是说用户可以根据自己的意愿来还原或者禁止获取这个值。
用户可以通过 设置--->隐私--->广告 来 *** 作。
在获取IDFA之前可以先进行判断。开关切换的时候IDFA会变,还原的时候会变,用户重置手机系统的时候也会变。
设备唯一标识符。大哥级别的人物,iOS5以后退出历史舞台了。
在UDID被禁用后的一个开源方案,原理好像是利用剪贴板在同一设备上的不用应用间共享一个OpenUDID,但是后来iOS7对剪贴板进行了限制,功能被废掉了。
网卡地址,具有唯一性,同样,iOS7之后当你获取Mac地址的时候会返回一个固定值。
通用唯一识别码。
分为两种方法,一个是CFUUID,另一个是NSUUID,后者更加面向对象,获取到的值都是一样的。需要注意的是, 每次获取到的UUID都是不一样的 ,所以需要第一次获取到以后保存到Keychain中。(目前只了解到 *** 作Keychain需要用到Securityframework,貌似提供了增删改查功能,具体没有研究)
以上4项代表的含义:
提交时:
检查项目中是否使用IDFA:
看这个就好啦!~
检查iOS项目中是否使用了IDFA - 刘靖煌
本人iOS小白
欢迎指教和打脸!~
也欢迎点赞!~
您好,你的问题,我之前好像也遇到过,以下是我原来的解决思路和方法,希望能帮助到你,若有错误,还望见谅!用数字联盟ios14系统IDFA解决方案,对于90%的iOS设备,数盟解决方案能够直接为广告主颁发设备原生IDFA。极端情况下,如果未在广告流量数据中归因到IDFA,则数盟将云端生成并下发与原生IDFA格式一致的值,确保稳定可用;之后一旦归因到原生IDFA值,将及时更新归因IDFA到手机上。非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
以上就是关于有人知道IDFA是什么吗全部的内容,包括:有人知道IDFA是什么吗、iOS平台配置应用使用广告标识(IDFA)、移动端设备标识码-DeviceID、IMEI、IDFA、UDID等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)