IOS渠道追踪方式
本文来自网易云社区
作者:马军
IOS,安卓渠道追踪的差异
Google Play国内不可用,国内的安卓 App 分发,都是依托几十个不同的应用市场或发行渠道,如百度、360、腾讯等互联网企业以及小米、华为、魅族等手机生产商。对于安卓 App 的渠道追踪,主要是围绕上面这些大的渠道来进行,并且这些渠道自己一般也会提供非常详尽和周全的数据分析给应用开发者。
iOS 的发行渠道则与安卓有很大的不同,除了少数越狱的机器之外,大部分用户的 App 都是从 App Store 下载的。iOS 的“渠道”其实通常是指那些在其它 App 或者网页内部,提供到 AppStore 的链接的页面。因此,在 iOS 中追踪发行渠道,主要是追踪进入 App Store 相关页面的渠道信息
IOS的渠道分发途径
IOS的渠道分发都是跳到app store下载,而app store并不会提供太多的信息,虽然在ITC中也在下载链中增加CT来进行分析。对追踪的 下载的流程不外乎下载页->app store下载页面->打开app激活,因最终的安装包都来自app store,在安卓中常用的在app中增加渠道号的方式就不可用了。
目前IOS追踪一般采用以下几种方案
通过IDFA来追踪。这种方案一般使用在App里面打开下载链接这种推广方式。这种方式需要先在提供下载链接的渠道app中收集IDFA,在下载安装后,启动app的时候再次上传IDFA,两者进行比进行验证渠道信息。
流程大概如下

但这种带来的局限性也显而易见,分发渠道只限于app,不适用网页或微信中的下载渠道。需要和第三方的渠道商进行接口开发,也会增加开发的成本。另外IDFA的变化也会导致部分信息丢失。
通过模糊匹配的方式进行追踪。
针对网页中的下载链接,虽然拿不到IDFA,但可以获取safari的UA和IP地址,获取UA 中的OS,浏览器版本,机型,IP以及登录时间。在下载之后另外在App侧也需要上传UA信息和Ip到服务端,和之前的信息进行比对,再结合访问的时间可以大致识别一些用户的来源。大致流程如下

但这种方式的局限性也显而易见,大量用户的准确性不高,另外对于同一出口IP的误差就更大。
3,通过cookie的方式来进行追踪
IOS新增了一个控件SFSafariViewController,这个控件增加了很多新的特性,但关键的一点是可以跨app与safari共享cookie。这给我们带来一个新的思路,可以利用safari与appp相同的cookie来识别不同的渠道信息。 具体的流程如下:

基本的原理是用户在使用safari打开下载地址时候,将渠道信息写入到cookie。当用户下载安装app,启动app的时候,在app里面使用SFSafariViewController访问同一地址,系统匹配两次cookie来追踪渠道。
此种方式比较准确,局限性也显而易见,只支持IOS9以上的。但目前IOS9以上的设备已经覆盖了8成以上的用户,对于剩下的用户,可以使用上面另一种方式进行补充了
本文来自网易云社区,经作者马军授权发布
相关文章:
【推荐】 【专家坐堂】四种并发编程模型简介
IOS渠道追踪方式的更多相关文章
- iOS渠道追踪统计方法大全
说起 iOS 的渠道统计,不少人会想到苹果官方的 App 分析功能(iTunes Connect),但实际操作中我们会发现,这个服务的统计维度还不够全面,许多广告主和运营人员更关心的是各个推广渠道实际 ...
- iOS渠道分包2种模式之包内注入文件分包
解决问题:商业模式中会存在这样的形式1款app需要不同的运用团队(工会)去分包推广,谁推广的包下载的人数都会在服务器记录,不同渠道的标示唯一来区分. iOS渠道分包模式有两种 一.IDFA模式 IDF ...
- iOS页面传值方式
普遍传值方式如下: 1.委托delegate方式: 2.通知notification方式: 3.block方式: 4.UserDefault或者文件方式: 5.单例模式方式: 6.通过设置属性,实现页 ...
- iOS数据持久化方式及class_copyIvarList与class_copyPropertyList的区别
iOS数据持久化方式:plist文件(属性列表)preference(偏好设置)NSKeyedArchiver(归档)SQLite3CoreData沙盒:iOS程序默认情况下只能访问自己的程序目录,这 ...
- iOS -数据持久化方式-以真实项目讲解
前面已经讲解了SQLite,FMDB以及CoreData的基本操作和代码讲解(CoreData也在不断学习中,上篇博客也会不断更新中).本篇我们将讲述在实际开发中,所使用的iOS数据持久化的方式以及怎 ...
- IOS 网络请求方式
iOS开发中的网络请求 今天来说说关于iOS开发过程中的网络请求. 关于网络请求的重要性我想不用多说了吧.对于移动客户端来说,网络的重要性不言而喻.常见的网络请求有同步GET, 同步POST, 异 ...
- IOS以无线方式安装企业内部应用(开发者)
请先阅读:http://help.apple.com/deployment/ios/#/apda0e3426d7 操作系统:osx yosemite 10.10.5 (14F1509) xcode:V ...
- iOS 加锁的方式
iOS多线程编程中,经常碰到多个线程访问共同的一个资源,在线程相互交互的情况下,需要一些同步措施,来保证线程之间交互的时候是安全的.下面我们一起看一下学一下iOS的几种常用的加锁方式,希望对大家有所帮 ...
- 最新iOS砸壳方式Frida (Mac OSX)
1. 安装Frida 首先需要安装Python3,我下载的是 macOS 64-bit installer 安装,因Macbook本机自带python为2.7.x,故需要配置~/.bash_profi ...
随机推荐
- 常用的ubantu操作命令
Ubuntu软件操作的相关命令 sudo apt-get update 更新源 sudo apt-get install package 安装包 sudo apt-get remove package ...
- python 爬预警没解析前的
- ES6系列_13之Proxy进行预处理(简单学习)
1.理解什么是预处理? 当我们在操作一个对象或者方法时会有几种动作,比如:在运行函数前初始化一些数据,在改变对象值后做一些善后处理.这些都算钩子函数,Proxy的存在就可以让我们给函数加上这样的钩子函 ...
- Seetaface 向树莓派 移植
seetaface由中科院计算所山世光研究员带领的人脸识别研究组研发.代码基于C++实现,不依赖第三方库.然而,目前开源的代码,是在windows vs上编译的,对于我们这帮mac/linux用户来说 ...
- 「小程序JAVA实战」小程序视频展示页开发(52)
转自:https://idig8.com/2018/09/22/xiaochengxujavashizhanxiaochengxushipinzhanshiyekaifa51/ 这次说下,小程序的视频 ...
- Yii框架操作数据库的几种方式与mysql_escape_string
一.Yii操作数据库的几种选择 1,PDO方式. $sql = "";//原生态sql语句 xx::model()->dbConnection->createComma ...
- windows解压缩版MySQL5.6.40的安装
windows解压缩版MySQL5.6.40的安装 安装步骤: 1.下载mysql-5.6.40-winx64.zip https://cdn.mysql.com//Downloads/MySQL-5 ...
- window.location 属性
属性 含义 值 protocol: 协议 "http:" hostname: 服务器的名字 "b.a.com" port: 端口 "88" ...
- [ShaderStaff] 圆角矩形效果实现
操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Unity2017.3 | Shader 最近在制作一款APP,其中需要对矩形图片资源的展现进行圆角化,看了一下网上的方案 ...
- proxmox 去除订阅提示
去掉登陆时是否订阅通知修改文件 /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js 搜索关键字 “You do not have ...