精华内容
下载资源
问答
  • 广告位标识符

    千次阅读 2017-05-02 16:41:36
    UDID的全称是Unique Device Identifier,是苹果IOS设备的唯一识别码,由40个字符的字母和...在 iOS 7 中,Apple 推荐使用广告标识符 advertisingIdentifier 来获取系统的唯一标识符。但是,用户如果重置了系统,广告标

    UDID的全称是Unique Device Identifier,是苹果IOS设备的唯一识别码,由40个字符的字母和数字组成。在很多需要限制一台设备一个账号的应用中经常会用到。在iOS5中可以获取到设备的UDID,后来被苹果禁止了。


    在 iOS 7 中,Apple 推荐使用广告标识符 advertisingIdentifier 来获取系统的唯一标识符。但是,用户如果重置了系统,广告标识符会重新生成。这就达不到 “唯一标识符” 的作用



    IDFA (advertisingIdentifier)

    获取唯一标识符办法

    NSString *idfa =  [[[ASIdentifierManager sharedManageradvertisingIdentifierUUIDString]


    有几种情况下,会重新生成广告标示符。

    (1)如果用户完全重置系统((设置程序 -> 通用 -> 还原 -> 还原位置与隐私) ,这个广告标示符会重新生成。

    (2)如果用户明确的还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符) ,那么广告标示符也会重新生成。

    关于广告标示符需要注意

    (1):如果程序在后台运行,此时用户“还原广告标示符”,然后再回到程序中,此时获取广 告标示符并不会立即获得还原后的标示符。必须要终止程序,然后再重新启动程序,才能获得还原后的广告标示符。

    (2):由于idfa会出现取不到的情况,故绝不可以作为业务分析的主id,来识别用户


    IDFV(identifierForVendor)
    获取唯一标识符办法

    NSString *idfv = [[[UIDevice currentDevice] identifierForVendor] UUIDString];

    每个设备在所属同一个Vender的应用里,都有相同的值。其中的Vender是指应用提供商,但准确点说,是通过BundleID的反转的前两部分进行匹配,如果相同就是同一个Vender,例如对于com.taobao.app1, com.taobao.app2 这两个BundleID来说,就属于同一个Vender,共享同一个idfv的值。

    idfv一定可以获取到,但是如果设备上所有该供应商的应用被卸载,下载再安装时,会产生不同的idfv值

    UUID

    应用安装时,将UUID保存在keychain里,卸载下次安装,可从keychain中获取到。刷机、重装系统UUID会变化。

    IDFA存储钥匙串

    结构图如下



    #import <AdSupport/AdSupport.h>
    #import "SFHFKeychainUtils.h"
    
    static NSString * const kDeviceIdentifier = @"kDeviceIdentifier";
    
    - (NSString *)getDeviceIdentifier {
        //从钥匙串中获取唯一设备标识
        NSString * deviceIdentifier = [SFHFKeychainUtils getPasswordForUsername:kDeviceIdentifier andServiceName:[[NSBundle mainBundle] bundleIdentifier] error:nil];
        if (deviceIdentifier) {
            //如果钥匙串中存在唯一标识,则直接返回
            return deviceIdentifier;
        }
        //获取IDFA
        NSString *IDFA = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
        //判断IDFA是否为空
        BOOL isEmpty = [[IDFA stringByReplacingOccurrencesOfString:@"-" withString:@""] stringByReplacingOccurrencesOfString:@"0" withString:@""].length;
        if (isEmpty) {
            //不为空,将IDFA作为唯一标识
            deviceIdentifier = IDFA;
        }
        else {
            //为空,获取UUID作为唯一标识
            deviceIdentifier = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
        }
        //保存唯一设备标识,如已存在则不进行任何处理
        [SFHFKeychainUtils storeUsername:kDeviceIdentifier andPassword:deviceIdentifier forServiceName:[[NSBundle mainBundle]bundleIdentifier] updateExisting:NO error:nil];
        //返回唯一标识
        return deviceIdentifier;
    }


    参考文章:http://www.jianshu.com/p/f9431ff97117



    展开全文
  • 广告标识符IDFA

    2019-09-30 11:30:14
    iOS提交审核:您的 App 正在使用广告标识符 (IDFA) NOV13TH,201510:34 AM 提交审核也是iOS开发者必备技能之一。关于提交审核的教程数不胜数,不会的童鞋赶紧尝试一下吧! 这篇文章我们来解决一个问题,关于IDFA...

    iOS提交审核:您的 App 正在使用广告标识符 (IDFA)

    NOV 13TH, 2015 10:34 AM

    提交审核也是iOS开发者必备技能之一。关于提交审核的教程数不胜数,不会的童鞋赶紧尝试一下吧!

    这篇文章我们来解决一个问题,关于IDFA的:

    您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。
    

    从14年2月初开始,Apple开始拒绝采集IDFA(identifier for advertising)而未集成任何广告服务的应用进入AppStore。怎么看自己的项目是否采集了IDFA呢?方法很简单,大家去看framework,看看有没有一个framework叫AdSupport.framework。

    如果有,那就惨了,上两张图看看:

    idfa1

    如果你选择了“否”:

    idfa2

    方案一:重新下载xcode

    1. 如果你的xcode不是最新版本的,建议下载最新版本的。重新打包后,再次提交审核。
    2. 如果你的xcode不是正规渠道下载的,建议从苹果官方下载。

    有朋友尝试过方案一,问题得到解决。如果解决不了,还有方案二。

    方案二:检测哪里用到IDFA

    首先cd到你的工程目录下,然后执行命令:

    grep -r advertisingIdentifier .
    

    果然找到了罪魁祸首,原来是SinaWeiboSDK/libWeiboSDK.a

    idfa3

    ios9之后新浪微博分享可使用的前提是加入ADSupport.framework,打包提交后一直报您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从app中移除,再上传二进制文件。

    找到了源头,那么接下来怎么做就简单了。

    1. 承认使用了IDFA,然后选择相应的选项。
    2. 移除SinaWeiboSDK/libWeiboSDK.a,分享还是可以成功的。

     

    本文出处刚刚在线:http://www.superqq.com/blog/2015/11/13/ios-submit-using-idfa/

     

     

    转载于:https://www.cnblogs.com/easyToCode/p/5196350.html

    展开全文
  • 广告标识符用途的选择

    千次阅读 2016-01-11 14:33:14
    IDFA(identifier for advertising)广告标识符:使用对外广告推广,跨平台等用户追踪等。 iOS6中的另一个新方法,返回一个NSUUID实例,最后获得一个UUID,有系统储存着。 重新生成广告标识符的情况: 1  用户...
    IDFA( identifier for advertising)广告标识符:使用对外广告推广,跨平台等用户追踪等。
    iOS6中的另一个新方法,返回一个NSUUID实例,最后获得一个UUID,有系统储存着。
    重新生成广告标识符的情况:
    1  用户完全重置系统((设置程序 -> 通用 -> 还原 -> 还原位置与隐私) ,这个广告标示符会重新生成。
    用户明确的还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符) ,那么广告标示符也会重新生成。
    在同一设备上APP取到的值是相同的, 是苹果专门给各广告提供商用来追踪用户而设的,用户可以在  设置|隐私|广告追踪  里重置此id的值,或限制此id的使用,故此id有可能会取不到值。
    注意:由于IDFA有取不到的情况,故不可以做为业务分析的值ID来识别用户。

    从14年2月开始,APPLE拒绝采集IDFA但未集成广告服务的应用进入APPStore, 而使用 IDFA能够较精准的识别用户,尤其对于广告主追踪广告转化率提供了很大帮助。采集IDFA可以最大程度的保证您数据的稳定性和一致性。故我们使用包含IDFA包的时候,在广告标识的用途,需要注意:
    在四个复选框中:

    1.服务应用中的广告。如果你的应用中集成了广告的时候,你需要勾选这一项。

    2.跟踪广告带来的安装。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件,但是应用里并没有展示广告你需要勾选这一项。

    3.跟踪广告带来的用户的后续行为。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件,但是应用里并没有展示广告你需要勾选第2项和第3项。
    下边还有一项

    4.这一项下的内容其实就是对你的应用使用idfa的目的做下确认,只要你选择了采集idfa,那么这一项都是需要勾选的。

    如果应用中只集成了广告,不追踪广告带来的激活行为,选择1和4
    如果应用中没有集成广告,但是需要追踪广告带来的激活行为,选择2,3和4
    如果集成广告,而且使用追踪广告带来的激活行为,全选 
    展开全文
  • iOS APP广告标识符查看

    千次阅读 2019-04-24 10:02:08
    查看项目中的广告标识符 首先cd到你的工程目录下,然后执行命令: grep -r advertisingIdentifier . grep -r advertisingIdentifier 简单的说,你用这条语句检测自己的工程,如果没有查到相关引用,那么就不要...

    查看项目中的广告标识符

    首先cd到你的工程目录下,然后执行命令:

    grep -r advertisingIdentifier .

    grep -r advertisingIdentifier 简单的说,你用这条语句检测自己的工程,如果没有查到相关引用,那么就不要勾选使用idfa,如果查到了相关引用,并且这些文件是用于展现广告的用途,那么勾选使用了idfa

    shareSDK总结一下,

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

    (2)、如果您的应用没有广告,而又获取了 IDFA。我们建议开发者朋友选择2和4,这种做法苹果官方没有明确说明,但目前为止还没有收到开发者选择2和4被拒的反馈。

    展开全文
  • ![图片说明](https://img-ask.csdn.net/upload/201604/28/1461839549_881965.png) ![图片说明]...因为程序中用到了分享到先浪微博的 libWeiboSDK.a 文件 含有广告标识符怎么选择呢
  • iOS开发之iOS14用户广告标识符IDFA

    千次阅读 2020-12-09 20:01:29
     IDFA 全称为 Identity for Advertisers ,即广告标识符。用来标记用户,目前最广泛的用途是用于投放广告、个性化推荐等。  在 iOS13 及以前,系统会默认为用户开启允许追踪设置,我们可以简单的通过代码来获取...
  • iOS提交审核:您的 App 正在使用广告标识符 (IDFA) 提交审核也是iOS开发者必备技能之一。关于提交审核的教程数不胜数,不会的童鞋赶紧尝试一下吧! 这篇文章我们来解决一个问题,关于IDFA的: 您的 App 正在使用广告...
  • 若有广告标识符会显示位置。根据位置去修改相应的文件。目前遇到的是shareSDK下的新浪微博分享,.a文件去掉。无影响新浪微博的分享功能。还有一个就是短信验证码的也是shareSDK 为一个MOBFou...
  • HBuilder 打包 iOS 客户端会产生广告标识符的问题,可以参考 https://ask.dcloud.net.cn/question/53934 链接中的解决方案。 找到{ //… “plus”:{ //… “distribute”:{ //… “apple”:{ //… “idfa”:false } ...
  • 相信很多人被苹果拒绝过 : 您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。那么如何查看app里哪里用到IDFA呢?很简单。打开终端,cd到工程...
  • 您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。 从 14年2月初开始,Apple开始拒绝采集DFA(identifier for advertising)而未集成任何广告...
  • IDFA(identifier for advertising)广告标识符:使用对外广告推广,跨平台等用户追踪等。 iOS6中的另一个新方法,返回一个NSUUID实例,最后获得一个UUID,有系统储存着。 重新生成广告标识符的情况: 1 用户...
  • 您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息 或将其从 App 中移除,然后再上传您的二进制文件。 1 2 那么如何查看app里哪里用到IDFA呢? 很简单。打开终端,cd到工程目录,执行grep -r ...
  • 使用Unity打包出Xcode,在iOS应用提交审核的时候提示报错说您的 App 正在使用广告标识符 (IDFA),但是明明UnityAds没有打开,应用也没有用到任何广告。难道只能选择是吗? 其实不用,在Unity Package Manager中...
  • 1.服务应用中的广告。如果你的应用中集成了广告的时候,你需要勾选这一项。 2.跟踪广告带来的安装。如果你使用了第三方的工具来跟踪广告带来的激活以及一些其他事件,但是应用里并没有展示广告你需要勾选这...
  • 检查项目找到广告标识符文件: 首先cd到你的工程目录下,然后执行命令: grep -r advertisingIdentifier . grep -r advertisingIdentifier .简单的说,你用这条语句检测自己的工程,如果没有查到相关引用,那么就...
  • AppStore提交审核时需要选择是否应用了IDFA,那么怎么检查应用内各个第三方库文件是否使用了呢 ...如果你的应用中集成了广告的时候,你需要勾选这一项。 (2)、将此 App 安装归因于先前投放的特定广告 
  • //广告标识符,如果用户手机限制广告跟踪打开的话,获取到的是一串0000的字符串,可以当设备标识符 NSString *Str2 = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; //真正的UDID代码获取不到,...
  • APP提交审核后,apple方面一直说我使用了IDFA,APP里没有集合任何广告SDK. 怀疑是其他第三方的SDK用了. 检测命令 //在项目的根目录下用终端执行 grep -r advertisingIdentifier . 如上图,是坑爹的新浪...
  • 不理解这个意思。 我的项目中添加了百度的开屏广告,是否要勾选呢?
  • 示例:583D2BB0-B19C-4A9A-A600-2A1EB2FB7E39 二、IDFA 理解为广告标识符,在同一个设备上的所有App都会取到相同的值,是苹果专门给各广告提供商用来追踪用户而设的。广告标示符是由系统存储着的。 适用于对外:...
  • 广告标识符(IDFA) app包含广告标识符,一定要选择是,否则可能直接二进制文件被拒。 检查方法: 打开终端,cd到项目根目录 执行grep -r advertisingIdentifier .(注意最后有个.) 若包含IDFA,会输出路径信息Binary ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,293
精华内容 3,317
关键字:

广告标识符