使用未声明的标识符:ASIdentifierManager

21

我正在使用以下代码显示AdMob测试应用程序要使用的唯一标识符。

这是我的applicationDidFinishLaunching函数...

// Print IDFA (from AdSupport Framework) for iOS 6 and UDID for iOS < 6.
if (NSClassFromString(@"ASIdentifierManager")) {
    NSLog(@"GoogleAdMobAdsSDK ID for testing: %@" ,
          [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]);
} else {
    NSLog(@"GoogleAdMobAdsSDK ID for testing: %@" ,
          [[UIDevice currentDevice] uniqueIdentifier]);
}

构建时出现错误:“使用未声明的标识符:ASIdentifierManager”

我已链接AdSupport框架并可以访问标识符管理器所在的文件,但它仍然无法识别它?

我已清理构建文件夹,重新启动xCode,但结果仍相同。


你具体在哪一行遇到了错误? - Simon Goldeen
[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]); - StuartM
你是否从框架中导入了头文件? - Shmidt
7
#import <AdSupport/ASIdentifierManager.h> - Shmidt
我没有这样做,因为我认为它们在“链接二进制文件与库”中,所以我不需要这样做?请将其作为答案提交,以解决问题。 - StuartM
2个回答

55

你是否已经从框架中导入了头文件?

#import <AdSupport/ASIdentifierManager.h>

0

感谢您的回答!如果这是一个框架,请添加起始路径。修复我的错误的示例是:

#import "CoreMotion/CMMotionActivityManager.h"

我错了,我只添加了.h文件。

#import "CMMotionActivityManger.h"  ---  This was incorrect and generated an error.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接