51ZionLin
51ZionLin
  • 发布:2018-01-08 10:45
  • 更新:2021-11-10 15:02
  • 阅读:4768

IOS - 原生获取IDFV IDFA

分类:Native.js

群里面一个朋友让我帮忙翻译的
Object-c代码如下:

NSString *idfv = [[[UIDevice currentDevice] identifierForVendor] UUIDString];  
NSString *adId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

注:下面的IDFA等同于adid

    console.log('UUID:'+plus.device.uuid)  
    console.log('important')  
    var NSUUID = plus.ios.importClass('NSUUID');  
    var UIDevice = plus.ios.importClass("UIDevice");  
    var currentDevice = UIDevice.currentDevice()  
    var identifierForVendor = currentDevice.identifierForVendor().UUIDString();  
    console.log('IDFV:'+identifierForVendor)  

    var ASIdentifierManager = plus.ios.importClass('ASIdentifierManager');  
    var sharedManager = ASIdentifierManager.sharedManager();  
    var IDFA = sharedManager.advertisingIdentifier().UUIDString();  
    console.log('IDFA:'+IDFA);

经过网友测试有效可用,代码没有优化,偷懒直接importClass,有意思的伙伴自己用invoke处理即可。

转载本文记得备注出处,谢谢。

2 关注 分享
深蓝的一片海 1***@qq.com

要回复文章请先登录注册

3***@qq.com

3***@qq.com

回复 2***@qq.com :
manifest.json里面添加"apple": {"frameworks": ["AdSupport.framework"]},
2019-03-19 16:13
3***@qq.com

3***@qq.com

同问,为啥获取的是空呢?是要配置个推sdk还是需要什么东西,为啥一直获取不到呢?
2019-03-19 13:21
2***@qq.com

2***@qq.com

只能得到idfv,获取idfa报错如下
[ERROR] : thirdScriptError
11:31:01.669 null is not an object (evaluating 'ASIdentifierManager.sharedManager');at pages/index/index page handleProxy function
2019-03-14 11:36