移动端设备标识码-DeviceID、IMEI、IDFA、UDID

移动端设备标识码-DeviceID、IMEI、IDFA、UDID,第1张

一:总览

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。其目的是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。

依赖: AdSupportframework

系统支持: iOS6及以上系统

获取方式: [ASIdentifierManager sharedManager]advertisingIdentifierUUIDString

定义: 由数字和字母组成的用来标识唯一设备的字符串。

特点:

依赖: UIKitframework

系统支持: iOS6及以上系统

获取方式: [UIDevice currentDevice]identifierForVendorUUIDString

定义: 由数字和字母组成的用来标识唯一设备的字符串。

特点: 根据vendor的值,如果vendor相同,则返回同一字符串;如果vendor不同,则返回不同的字符串。

vendor解释: 英文解释为卖家,小贩。根据xcode文档解释,正常情况下,会根据App Store提供的数据进行判断。但是如果app不是通过app store进行安装的(如企业应用或开发调试阶段),那么会根据bundle ID判断。

判断准则:

CocoaChina里的这文章里讲的更细更全,有兴趣的可以了解

IDFA,英文全称 Identifier for Advertising ,可以理解为广告id,苹果公司提供的用于追踪用户的广告标识符,可以用来打通不同app之间的广告。

IDFA是一串16进制的32位串的由数字和字母组成的用来标识唯一设备的字符串。

有以下几个特点:

每个设备只有一个IDFA,不同APP在同一设备上获取IDFA的结果是一样的;

但IDFA存在可重新生成的情况:

用户完全重置系统(设置程序 —— 通用 —— 还原 —— 还原位置与隐私)

用户明确还原广告(设置程序 —— 通用 —— 关于本机 —— 广告 —— 还原广告标示符)

分别对我的项目中和ShareSDK里面进行了检查:

(1)、在 App 内投放广告 服务应用中的广告。如果你的应用中集成了广告的时候,你需要勾选这一项。

(2)、将此 App 安装归因于先前投放的特定广告 跟踪广告带来的安装。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件,但是应用里并没有展示广告你需要勾选这一项。

(3)、将此 App 中发生的 *** 作归因于先前投放的特定广告 跟踪广告带来的用户的后续行为。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件。

(4)、iOS 中的“限制广告跟踪”设置 这一项下的内容其实就是对你的应用使用 IDFA 的目的做下确认,只要你选择了采集 IDFA,那么这一项都是需要勾选的。

(1)、如果你的应用里只是集成了广告,不追踪广告带来的激活行为,那么选择1和4;

(2)、如果你的应用没有广告,而又获取了IDFA。建议选择2和4;

首先,我们要添加AdSupportframework,在项目的Target—General—Linked Frameworks and Libraries里面点击“+”号

搜索AdSupportframework

然后在头文件添加

#import <AdSupport/AdSupporth>

在项目里使用获取Adid的单例方法

NSString adid = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

这样就可以了。

电脑上如果有安装“itunes”,插上“iphone”,打开“itunes”,点击右上角的“iphone”。

在“摘要”页,可以看到设备的“序列号”。

点击进入“序列号”就会出现“标识符”(UDID)。

具体步骤:

1电脑上如果有安装“itunes”,插上“iphone”或者“iPad”,打开“itunes”,点击右上角的“iphone”或者“iPad”。

2在“摘要”页,可以看到设备的“序列号”。

3点击进入“序列号”就会出现“标识符”(UDID)。

以上就是关于移动端设备标识码-DeviceID、IMEI、IDFA、UDID全部的内容,包括:移动端设备标识码-DeviceID、IMEI、IDFA、UDID、iOS唯一标识符(IDFA&IDFV)、多游idfa怎么使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9440815.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存