J. *_*sta 25 xcode ads ios ios6
我已经实现了这个方法来获取advertisingIdentifier
和identifierForVendor
:
- (NSString *) advertisingIdentifier
{
if (!NSClassFromString(@"ASIdentifierManager")) {
return [OpenUDID value];
}
return [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
}
- (NSString *) identifierForVendor
{
if ([[UIDevice currentDevice] respondsToSelector:@selector(identifierForVendor)]) {
return [[[UIDevice currentDevice] identifierForVendor] UUIDString];
}
return @"";
}
- (BOOL)isAdvertisingTrackingEnabled
{
if (NSClassFromString(@"ASIdentifierManager") && ![[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {
return NO;
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
在模拟器上一切正常,我可以获得2个字符串ID表示.
但是当我从带有iOS 6.0的iPhone 3GS(10A403)运行时,这两种方法返回"00000000-0000-0000-0000-000000000000"作为标识符.已经完成了:
Mat*_*ttP 24
它似乎是iOS中的一个错误.在通过无线方式升级的设备上看到相同的问题,但使用Xcode或iTunes升级的设备按预期工作,没有零.
尝试过与你类似的步骤,唯一的共同主题是无线(坏)与有线升级(好).
更新:直接从iOS 5.1移动到6.1空中的用户体验不同的行为.每次完全关闭应用程序并重新启动时,都会返回一个新值identifierForVendor
.如果应用程序正在卸载并重新安装,则会出现这种情况,但事实并非如此.
为响应技术支持事件请求,Apple在其系统中确认了此错误.他们说,identifierForVendor
和advertisingIdentifier
有时返回所有零既可以在发展中可以看出建立和应用下载量超过苹果的App Store中的空气.他们没有解决办法,也无法说明何时解决问题.
归档时间: |
|
查看次数: |
15652 次 |
最近记录: |