如何优化网站打开速度,网站建设那家好,wordpress教程 导航,微信移动网站建设要识别用户#xff0c;首先就是要选择一个标识符#xff0c;通过这个标识符来识别这个用户的设备#xff08;而不是用户#xff09;#xff0c;这个标识符要能够保证一个设备上返回的值是一样的#xff0c;并且在其他设备上不会出现相同的值。 在iOS7之前#xff0c;曾经…要识别用户首先就是要选择一个标识符通过这个标识符来识别这个用户的设备而不是用户这个标识符要能够保证一个设备上返回的值是一样的并且在其他设备上不会出现相同的值。 在iOS7之前曾经有过很多方法来识别用户的设备从最原始的设备udid、mac地址到被各广告统计平台广泛使用的开源方案OpenUDID。 但随着AppStore开始拒绝接受使用udid的应用到mac地址在iOS7上所有设备上都返回相同的值再到iOS7上对剪贴板的限制导致OpenUDID无法被不同应用共享相同的值注定了上面提到的这些id们不得不退出历史的舞台。 随着iOS7快速占据了半壁江山设备id的控制权终于彻底回到了Apple手中同时也让用户能够把控自己的隐私充分表明了是苹果对用户隐私保护的决心。 好了其实就一个问题iOS7时代我们用什么来追踪和识别用户 先给结论 idfa: 适用于对外例如广告推广换量等跨应用的用户追踪等idfv: 适用于对内例如分析用户在应用内的行为等PS尘埃落定跟着Apple走大家不用再犹豫了。 再给解释 idfa 全名advertisingIdentifier 代码 #import AdSupport/AdSupport.hNSString *adId [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];来源iOS6.0及以后 说明直译就是广告id 在同一个设备上的所有App都会取到相同的值是苹果专门给各广告提供商用来追踪用户而设的用户可以在 设置|隐私|广告追踪 里重置此id的值或限制此id的使用故此id有可能会取不到值但好在Apple默认是允许追踪的而且一般用户都不知道有这么个设置所以基本上用来监测推广效果是戳戳有余了。注意由于idfa会出现取不到的情况故绝不可以作为业务分析的主id来识别用户。idfv 全名identifierForVendor 代码 NSString *idfv [[[UIDevice currentDevice] identifierForVendor] UUIDString];来源iOS6.0及以后 说明顾名思义是给Vendor标识用户用的每个设备在所属同一个Vender的应用里都有相同的值。其中的Vender是指应用提供商但准确点说是通过BundleID的DNS反转的前两部分进行匹配如果相同就是同一个Vender例如对于com.somecompany.appone,com.somecompany.apptwo 这两个BundleID来说就属于同一个Vender共享同一个idfv的值。和idfa不同的是idfv的值是一定能取到的所以非常适合于作为内部用户行为分析的主id来标识用户替代OpenUDID。注意如果用户将属于此Vender的所有App卸载则idfv的值会被重置即再重装此Vender的Appidfv的值和之前不同。 历史上的英雄们 UDID 设备唯一标识符Unique Device Identifier之前被各种国内外统计平台应用开发商广泛使用后Apple从2013年05月01日起拒绝接受使用UDID的应用后立毙 Mac地址 每一个网卡都有一个唯一的标识即Mac地址显然用来标识一个手机是绰绰有余的了也有一些开源的方案也用到了它国内UMTrack等也用它作为过主id随着iOS7返回同样的值后不得不退隐江湖。 OpenUDID 在Apple拒绝UDID后OpenUDID作为独立于Apple的开源方案被广大的开发者所接受各大统计广告平台都从UDID等方案切换到OpenUDID的方案看来大家都不想完全被Apple束缚啊但不幸的事同样由于iOS7对剪贴板的限制导致同一个设备上应用间无法再共享一个OpenUDID即OpenUDID作为设备唯一标识的能力被大大削弱。也可以看到随着iOS7的来临各广告平台都迅速更新自己的SDK来切换到苹果的idfa的方案上来。 其他 CFUUID、NSUUID等自己生成自己存储管理的就不细说啦。 DeviceToken 这是推送用的令牌用户如果没开推送或者拒绝了这个就没有了转载于:https://www.cnblogs.com/BigPolarBear/p/3359526.html