iOS端如何实现类似Android的referral引荐系统?
iOS端安装引荐码(referrer)获取可行方案
iOS系统没有原生提供类似Google Play的install referrer直传机制,但可以通过以下几种成熟方案实现相同效果:
方案1:苹果官方原生归因方案(合规性最高)
苹果官方支持通过App Store链接加自定义参数+AdServices框架实现引荐码获取:
- 生成带参数的App Store跳转链接,示例格式:
https://apps.apple.com/cn/app/你的应用名称/idxxxxxx?ct=50380,其中ct参数就是你自定义的引荐码字段 - 应用首次启动时引入
AdServices框架,获取归因令牌后传到自己的后端解析即可拿到对应的引荐码,示例代码如下:
#import <AdServices/AdServices.h> - (void)fetchReferrerCode { if (@available(iOS 14.3, *)) { NSError *err = nil; NSString *token = [AAAttribution attributionTokenWithError:&err]; if (token && !err) { // 将token发送到自有后端,调用苹果官方归因接口即可解析出ct参数值 } } }
- 适用说明:
- 支持iOS14.3及以上系统,覆盖目前95%以上的活跃iOS设备
- 不需要获取用户IDFA授权,完全符合苹果隐私政策要求
- 归因结果返回最长有24小时延迟,不适合对引荐码实时性要求极高的场景
方案2:剪切板+设备指纹匹配方案(实时性最高)
如果需要应用首次启动立刻拿到引荐码,可以使用该方案:
- 用户点击引荐链接后先跳转至你自有的中间H5页面,页面同时完成两个操作:
- 将引荐码写入到用户设备的剪切板中
- 收集用户设备的非隐私模糊特征(系统版本、屏幕分辨率、IP段、设备类型等),和引荐码绑定上传到你的后端,之后自动跳转到App Store
- 应用首次启动时,先读取剪切板内容,匹配到你预设的引荐码格式即可直接使用,同时上传当前设备的模糊特征到后端做二次校验,避免误判
- 适用说明:
- iOS16及以上版本读取剪切板会弹出用户授权提示,需要做好对应的使用引导
- 不要采集用户隐私信息,保证行为符合隐私合规要求
方案3:第三方归因SDK方案(接入成本最低)
如果不想自行开发适配逻辑,可以直接接入成熟的第三方移动归因SDK,这类SDK已经封装好了上述两种方案的适配逻辑,只需要在对应的后台配置引荐参数规则,即可直接在应用内拿到解析完成的引荐码,不需要自行处理苹果接口调用、特征匹配等流程。
内容的提问来源于stack exchange,提问作者Zeeshan Ashraf
相关产品推荐
相关产品推荐

