• 前段时间,我们公司的产品又双叒叕给我们提了新需求,要求我们把APP相关的数据统计分析一下,这些指标包括但不限于应用每日的新增、活跃、留存率等等,最好每天都能提供数据报表。这种事情真是想想就麻烦,大家最后还是决定交给专业的团队来解决。我们一直在用个推推送,相比于其他第三方推送,个推的到达率比较高,刚好他们旗下有一款叫“个数·应用统计”的产品,非常符合我们的需求。经过一段时间的体验,我们发现个数效果还是很不错的,集成操作简单方便,数据快准狠。好东西当然要拿出来分享出来了,下面就手把手教大家快速集成个数Android SDK。
  • 一、 登录账号并创建应用

  • 1. 访问个推开发者中心,点击立即注册(如果已有账号了可以直接进入步骤3):
  • 2. 根据个人情况填写并注册账号:
  • 3. 注册好了之后就可以登录啦,选择主界面左边菜单栏的个数·应用统计:
  • 4.进入个数·应用统计面板后,选择右上角的“新增应用”添加新的应用:
  • 5.填写应用相关信息,勾选Android,点击提交:
  • 6.提交后,页面自动返回应用列表,我们就能看到刚刚添加的应用了。点击应用配置:
  • 7.在应用配置界面可以看到APPID,我们可以将其复制保存下来,它在后续的集成环节会被用到:
  • 二、配置个数SDK

  • 个数Android SDK提供两种集成方式,分别是maven集成和aar包手动集成(本人推荐使用maven集成,更加简单方便)
  • 三、maven集成方式

  • 1.添加maven库地址
  • 在以项目名命名的顶层 build.gradle 文件中,添加个推 maven 库地址,如下所示:
  • maven{
  • url 'http://mvn.gt.igexin.com/nexus/content/repositories/releases'
  • }
  • 2.配置依赖
  • 在 app/build.gradle 文件中引用个数SDK依赖库,如下图所示:
  • dependencies{
  • compile 'com.getui:gssdk:2.2.3.0'
  • }
  • 四、aar包集成方式

  • 将资源文件中的 GSSDKxxx.aar 以及 GTCxxx.aar 一起复制到 app 模块下的 libs 文件中,打开 app/build.gradle ,在 dependencies 中添加相应包的引用 :
  • dependencies {
  • implementation files('libs/GTC-2.0.0.aar')
  • implementation files('libs/GSSDK-2.2.2.0.aar')
  • }
  • GTC为个推平台的公共代码库,如果你已经接入过个推其他包含GTC的产品,则无需再次引入。
  • 五、SDK配置

  • 这一步需要配置混淆。首先需要在混淆文件中加入如下配置:
  • -dontwarn com.getui.**
  • -keep class com.getui.**{*;}
  • 然后配置个数应用参数:
  • 在 app/build.gradle 文件中的 android.defaultConfig 下添加 manifestPlaceholders ,配置个数相关的应用参数,如下图所示:
  • manifestPlaceholders = [
  • GS_APPID : "APP_ID",
  • GT_INSTALL_CHANNEL : "APP_CHANNEL"
  • ]
  • APP_ID为步骤1中从官方网站获取到的值,APP_CHANNEL为将要发布的渠道。
  • APP_CHANNEL也可以通过Gsconfig类中setInstallChannel的方法来设置。需要注意的是,若使用这个方法,需要在SDK初始化之前配置,否则不能生效。
  • 做完了这一步,SDK集成工作就完成啦。
  • 六、SDK初始化

  • 个数SDK的初始化操作非常简单,只需在Application的onCreate方式中添加如下代码即可:
  • GsManager.getInstance().init(Context context);
  • 初始化后SDK产品功能就能正常使用了。新增、日活、留存率、人均访问时长、各个页面的浏览次数……APP数据统计涉及到的各类指标,都能够通过个数SDK自动统计完成。
  • 七、一些自定义的功能

  • 应用时长统计:
  • 应用时长统计功能主要用于统计APP的启动次数和真实活跃时长,集成个数SDK 后不需要开发者调用额外的接口。其中Android平台一次完整的启动指的是如下两种情况之一:
  • (1)从启动应用到关闭应用。
  • (2)从启动应用到应用退至后台,且在后台运行时间超过默认值30s。这个默认值支持修改:
  • void GsConfig.setSessionTimoutMillis(long time);
  • 注意:GsConfig配置类的操作需要在SDK初始化之前完成。
  • 1.自定义事件功能:
  • 自定义事件可以统计某些用户自定义埋点的发生时间以及次数,例如广告点击、短信数量等。通常 event_id 用于表示某种行为或功能的统计(如统计“发送”按钮被触发多少次),而参数properties则用于标识被统计的具体对象(如功能为“下载”的按钮)。通过event_id 和 properties ,我们可以为一个事件打上唯一标识。
  • 自定义事件主要分为两种:
  • (1)次数统计:统计指定行为被触发的次数。
  • (2)时长统计:统计指定行为消耗的时间,单位为秒。需要 eventBegin 和 eventEnd 接口成对使用才可生效。
  • 其中每类事件都支持使用 properties 参数类型。
  • 注意:event_id 需要先在个数网站上面配置,才能参与正常的数据统计。event_id 不能包含空格或转义字符,如下:
  • (1)点击侧边菜单栏事件列表。
  • (2)点击新增事件按钮。
  • 3、根据事件类型分别输入相应的事件ID以及事件名称。
  • 目前个数的自定义事件有两种:
  • 1.次数统计事件
  • 在事件执行开始时调用次数统计方法,SDK会根据事件ID,统计该事件被点击的次数。
  • void GsManager.getInstance().onEvent(String eventId, Properties properties)
  • 参数:
  • eventId :自定义事件ID,用于标识唯一的事件
  • properties : key-value ,自定义属性,用于扩展统计需求
  • key和value都是string类型
  • 使用代码:

  • 1.事件时长统计
  • 在事件开始和结束时调用对应的方法,可以获取并上传事件的时间。
  • void GsManager.getInstance().onBeginEvent(String eventId, Properties properties)
  • void GsManager.getInstance().onEndEvent(String eventId, Properties properties)
  • 参数:
  • eventId :自定义事件ID,用于标识唯一的事件
  • properties : key-value ,自定义属性,用于扩展统计需求,key和value都是string 类型
  • 使用代码:
  • 1.数据上传策略
  • 开发者可根据自身应用需求,设置不同的数据上报策略,从而有效地控制用户流量开销。
  • (1)个数目前支持的上报策略包括以下5种:
  • void GsConfig.setUploadStrategyType(GsConfig.GESHU_STRATEGY_REAL_TIME);
  • 目前默认的规则是:在连接WIFI的情况下实时上传,未连接WIFI则每隔 1 小时上报一次数据。开发者也可以手动关闭WIFI环境下实时上传数据的开关。
  • void GsConfig.setEnableSmartReporting(boolean isEnable);
  • (2)数据上传相关的设置接口
  • 1)(仅在发送策略为GESHU_STRATEGY_PERIOD时有效)设置间隔时间(默认为60,单位是分钟,即 1 小时)
  • void GsConfig.setUploadPeriodMinutes(int minutes);
  • 2)(仅在发送策略为GESHU_STRATEGY_BATCH时有效)设置最大批量发送消息的个数(默认值为32)
  • void GsConfig.setMaxBatchReportCount(int maxCount);
  • 注意:GsConfig配置类需要在SDK初始化之前完成。
  • 以上内容就是本人集成个推应用统计产品(个数)的经验总结,希望对你有帮助!如果大家在集成过程中遇到问题了,可以在个推官网底部找到他们的技术支持,或者在评论区给我留言,大家一起解决,一起进步。

个推应用统计产品(个数)Android集成实践的更多相关文章

  1. 个推数据统计产品(个数)iOS集成实践

    最近业务方给我们部门提了新的需求,希望能一站式统计APP的几项重要数据.这次我们尝试使用的是个推(之前专门做消息推送的)旗下新推出的产品“个数·应用统计”,根据官方的说法,个推的数据统计产品通过专业的 ...

  2. 个推用户画像产品(个像)Android集成实践

    我们团队之前一直是个推推送的忠实用户,近期个推新推出了产品“个像·用户画像”,刚好非常契合我们的业务需求,于是我们也试用了一下.总的来说效果还不错,这篇文章就为大家介绍一下如何从零开始快速集成个像An ...

  3. 金牌架构师:我们是这样设计APP数据统计产品的

    前言:近期,智能大数据服务商“个推”推出了应用统计产品“个数”,今天我们就和大家来谈一谈个数实时统计与AI数据智能平台整合架构设计. 很多人可能好奇,拥有数百亿SDK的个推,专注消息推送服务多年,现在 ...

  4. Android集成极光推送

    要说学习极光推送,个人感觉官方文档就非常好啦,但是没法,人太懒啦,为了下次能够快速的将极光推送集成到项目中,故结合之前开发的项目和官方文档记录下简单的Android集成极光推送,在这之前,先上一张简单 ...

  5. React Native 轻松集成统计功能(Android 篇)

    关于推送的集成请参考这篇文章,本篇文章将引导你集成统计功能,只需要简单的三个步骤就可以集成统计功能. 第一步 安装 在你的项目路径下执行命令: npm install janalytics-react ...

  6. 个推用户画像产品(个像)iOS集成实践

    最近业务方给我们部门提了新的需求,希望能构建精准用户画像.我们尝试使用的是个推(之前专门做消息推送的公司)旗下新推出的产品“个像·用户画像”.根据官方的说法,个像能够为APP开发者提供丰富的用户画像数 ...

  7. Android集成JPush(极光推送)

    目前只是简单的集成 1.在极光推送官网注册用户 2.创建应用 3.配置包名,获得APPKEY 去设置 输入应用包名 确定然后返回查看APPKEY 3.在应用中集成极光推送 用的jcenter自动集成的 ...

  8. 第六章 第一个Linux驱动程序:统计单词个数

    现在进入了实战阶段,使用统计单词个数的实例让我们了解开发和测试Linux驱动程序的完整过程.第一个Linux驱动程序是统计单词个数. 这个Linux驱动程序没有访问硬件,而是利用设备文件作为介质与应用 ...

  9. 第六章第一个linux个程序:统计单词个数

    第六章第一个linux个程序:统计单词个数 从本章就开始激动人心的时刻——实战,去慢慢揭开linux神秘的面纱.本章的实例是统计一片文章或者一段文字中的单词个数.  第 1 步:建立 Linu x 驱 ...

随机推荐

  1. GAN初步——本质上就是在做优化,对于生成器传给辨别器的生成图片,生成器希望辨别器打上标签 1,体现在loss上!

    from:https://www.sohu.com/a/159976204_717210 GAN 从 2014 年诞生以来发展的是相当火热,比较著名的 GAN 的应用有 Pix2Pix.CycleGA ...

  2. spfa 单源最短路究极算法

    学习博客链接:SPFA 求单源最短路的SPFA算法的全称是:Shortest Path Faster Algorithm.     SPFA算法是西南交通大学段凡丁于1994年发表的.    从名字我 ...

  3. C#精华面试题及答案 三

    PS.学了两三年的软件开发到头来发现连一些基本的东西都没掌握,通过面试题来检验自己的水平,让学习变得更加有方向性,也为将来择业而打下基础,不至于到时候手忙脚乱. 一.选择,填空题 1. 在ADO.NE ...

  4. Java中Class类详解、用法及泛化

    Java中Class类及用法 Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识,即所谓的RTTI.这项信息纪录了每个对象所属的类.虚拟机通常使用运行时类型信息选准正确方 ...

  5. 区块链--Bitcoin共识机制

    目录 中心化和去中心化 比特币共识机制 拜占庭将军共识机制 比特币成功解决了拜占庭问题 中心化和去中心化 中心化模式: 优点:效率高 缺点:中间层次太多(组织层次连接) 去中心化模式: 缺点:效率低 ...

  6. git 和 github 链接

    第一步  再电脑上安装git 请自行搜索   到你需要的一个目录下:例如/gittest 首先创建文件,然后  git  add  和 git commit  不然直接查看  git branch - ...

  7. 第三周 构造一个简单的Linux系统MenuOS

    一.   Linux内核源代码简介 稳定版内核:Linux-3.18.6 Linux内核源代码的目录结构: arch目录:在Linux内核源代码里占有的比重很大,因为Linux内核支持很多的体系结构, ...

  8. page = new String(request.getQueryString().getBytes("ISO-8859-1"),"GBK");解决前台传后台乱码问题

    page = new String(request.getQueryString().getBytes("ISO-8859-1"),"GBK");解决前台传后台 ...

  9. js浮点数保留一位小数

    function changeTwoDecimal_f(x) { var f_x = parseFloat(x); if (isNaN(f_x)) { alert('function:changeTw ...

  10. Spring+Junit测试用例的使用

    1.[导包]使用Spring测试套件,需要两个jar包:junit-X.X.jar和spring-test-X.X.X.RELEASE.jar,在maven项目下可添加如下依赖: <depend ...