随着PMTalk的App上线准备期,近期我们也在做App的数据采集和数据指标的工作。同时app的数据采集知识也是产品经理的基础知识。
1.app数据获取的基础原理
我们知晓app数据采集的底层逻辑和数据类型,有助于我们建立数仪表盘,快速将迭代变为业务导向逐渐切换为数据+业务的智能导向。
对于一个可靠的数据仪表盘,仅仅是自己家的app数据还不够,还要获取app的数据很多时候我们不能仅靠自家app数据来做数据分析,还要获取竞品以及相关上下游app的产品数据来做数据分析。
而获取APP数据和获取网页数据是不同的,网页可以通过模拟行为操作,来获取网页的接受、发送数据,对这两部份数据进行截取。而APP则通过获取数据传输过程中的数据包来获得数据。在app数据获取里要通过抓包程序就能够获得传输数据信息;
抓包的数据当然可用,一般app的数据是走http或者https。如果是http就和网页一样。https的话可能会加密。另外你问的做持续抓取话,简单的方法是写好脚本定时触发,用数据来做增量更新。
App中的数据无非两种,一种是网络数据,一种是本地数据。网络请求我们一般用抓包工具(Mac上的Charles 或者Windows上的Fiddler)来获取Api,然后再用程序循环请求,获取所有的数据。而另一种是app存储到本地的数据,一种是存储到文件中的,一种是存储到数据库中的。
有代码经验或APP开发的产品经理应该知道同学其实很多APP的数据采集,都是对APP进行模拟操作,即可获得app里的数据。我们只需要写代码模拟其请求,无论POST还是GET,即可得到该请求所返回的信息。再通过对返回的信息结构化解析,即可得到我们想要的数
app的数据既有网络传输生成的也有本地的。比如PMTalk的文章数据,会做一部分本地存储,详细文章详情要从网络查询。用户每操作一次,访问一个页面,APP与服务端交互的数据,均可获取下来。这种方式广泛用于app的数据采集
自己做数据采集就是运用上面的底层逻辑,但我们很多时候为了省时省力,都会选择第三方的app数据采集工具进行埋点。
2.第三方工具下app数据采集埋点
我们在做app数据采集的时候一定要清楚数据采集的目的,肯定不能做全量数据统计的,即使我们清楚数据越多越好,但只有围绕目的和目的相关的数据才是有意义的。
比如这次上线了商城的功能,数据埋点其中一个目的想要统计商场功能的转化率、营收数、浏览量等,那么产品经理需要对用户在购买过程中,商城功能整个购买流程涉及到的页面包括商品列表页、商品详情页、确认购买页、支付页、支付成功页。也就是需要对上面提到的页面进行埋点,统计进入到各个页面的数据。
一般完成一个APP数据埋点的7个步骤:
1、注册一家统计工具网站付费或免费使用
2、新建应用
3、获取KEY和SDK代码包
4、将埋点需求和SDK包发给研发
5、自定义埋点需求完善
6、研发开发并完成APP上线
7、在工具平台查看数据
我们重点讲解的是第五步。除了我们要提出需要统计的数据指标,(这类指标往往在工具里都有现成的,只需要把代码包和工具连通就行了),而真正个性化的数据埋点则是自定义事件了。
第五步:埋点数据的自定义事件
自定义事件分为计数事件以及计算事件。
计数事件主要统计事件发生的数量。计算事件主要统计事件相应的数值类型。
举个例子,一个文章发布事件,统计多少人成功发布了文章属于计数事件,统计发布成功的人中文章的字数和话题分布规律属于计算事件
第四步的数据指标是基于数据统计目的所罗列的数据指标和数据词典,将之前的数据指标要么进行更新、要么进行扩展。
数据埋点,离不开和开发沟通
很多数据埋点需求在提出来后实际上是不能统计到或精确度不够,要么是因为资源、要么是因为时间成本等问题,所以在有限数据下找到最能够采集的数据,达到最高效率,同时精准度最高。
使用第三方数据分析平台,在APP里埋点后,还需要在第三方平台上传相应的事件ID与事件名称,一定要代码中的ID与名称一致。ID与名称一般是产品这边整理命名,iOS 与Android统一。
埋点事件案例说明:
如下是一个手机验证码注册并登录的页面,在这个页面里有下面组件
手机输入框
短信验证码输入框
登录按钮
获取验证码按钮
用户注册协议知情按钮
▲ 用户登录页面
围绕上面5个组件和用户的关系,我们可以整理出下面的埋点事件。
简单事件统计,即记录事件的发生次数(可理解为PV)和事件发生人数(可理解为UV)。
▲ 网络图片:登录注册页面事件
事件ID,英文叫做EventID,该名称可由程序员自行定义(按照APP统计平台,如友盟、talkingdata等提供的事件ID命名规范进行命名),将该事件ID写入需要跟踪的位置中即可。
事件名称,事件ID的中文名称,是为了方便产品和运营人员查看没有严格的中文规范,但是要具体符合事件场景意义,事件名称命名是在APP上线后,该事件ID有数据后的一个事后行为,通常是在APP数据平台中定义(你可以把input_testcode这个事件ID的事件名称改为:用户在这里输入验证码)。事件名称只是事件ID在前端页面的一个显示名称。
事件发生次数,即该事件总共发生的次数;每次使用对应的事件ID,次数都会+1;
事件发生人数,即该事件的发生人数(不同的统计平台称呼不一样,有的的称呼为:达成该事件的用户数、独立用户数);可以理解为,在每个事件中,都会有个事件ID计数器,每当该事件被触发时,同时记录下该用户的唯一标识,事件数即加1;事件发生人数,即根据用户唯一标识,对事件发生次数进行去重。
以上是我们做app数据统计下的基础功能,从了解app的数据获取原理再到数据使用第三方工具的数据埋点。
今天的分享就在这。
网友评论