TcStatInterface 客户端SDK功能概述SDK使用配置APP常规数据统计API说明注意 自定义统计SDK

程序名称:TcStatInterface 客户端SDK功能概述SDK使用配置APP常规数据统计API说明注意

授权协议: 未知

操作系统: Android

开发语言: Java

TcStatInterface 客户端SDK功能概述SDK使用配置APP常规数据统计API说明注意 介绍

TcStatInterface是自定义统计SDK,完全放弃第三方平台,让app拥有自主的数据统计功能,支持页面统计 自定义事件统计
APP启动退出统计,不同渠道统计。

客户端SDK功能概述

在使用统计服务前,开发者先要拿到本身APPID。其中AppId是客户端的身份标识,在客户端SDK初始化时使用。然后下载最新Library的
SDK压缩包,其中包括了Android SDK和AndroidDemo。Android版SDK以Module形式提供,
你的APP只需要添加少量代码和配置,即可完成接入TcInterface统计服务。

统计服务Android

SDK所有的接口都封装在TcStatInterface抽象类的静态方法中,主要功能接口请参考第3节API说明。应用在启动时,需要调用
initialize方法来初始化统计服务,之后便可按照统计的业务需求,调用统计数据上报接口上报统计打点。
SDK提供了接口给开发者来设置向统计统计服务器上报统计数据的策略,开发者可以在任意时候调用修改策略。客户端SDK上报的数据包括默认事件统计、应用
全局(AppAction)统计(用于统计app的唤醒、打开关闭频率、使用时长等)、页面访问统计(Page)和自定义事件统计(Event)。
统计SDK提供app的崩溃日志收集功能(统计SDK2.0
将会新增)。功能开启后,对于app在使用过程中的崩溃,SDK将自动采集崩溃日志,并上传到统计后台;统计后台会根据app版本,对崩溃进行聚合、展
示。开发者可以根据app实际情况情况,将该崩溃标记成已处理或者忽略状态。

SDK使用配置

本节主要介绍使用好房统计SDK前的准备工作,开发者也可以参照SDK中的demo来配置。

2.1. 配置AndroidManifest.xml文件 SDK支持的最低安卓版本为2.2。

<uses-sdk  android:minSdkVersion="8"/>

统计服务需要的权限列表 权限

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

对应的5种权限,用途如下:

网络访问权限,需要联网以便于向小米统计服务端上报统计数据。
查看网络状态,用于根据不同的网络环境,选择相应的上报策略。同时也需要上报当前的网络环境用于后台统计展示。
读取手机状态和身份,用于获取设备的唯一标识,为当前设备生成一个唯一设备ID。 查看Wifi状态权限,用于获取mac地址,生成设备唯一标示。
获取用户地理位置信息,用于获取精准确的地理位置,变于统计用户分布情况。

2.2. 初始化统计服务
应用启动时,需要调用统计SDK中的初始化方法,传入appID(目前已定义好相关APPID,参见下表)等身份验证参数和应用对应的渠道号。在调用其他统计服务相关API前,必须调用本方法初始化统计服务,
建议您在程序的Application的onCreate中初始化Tamic统计服务。传入即可。

APP常规数据统计

本节主要介绍如何设置数据上报策略,如何记录页面访问行为和用户自定义事件。本节也介绍了通过集成测试模块验证SDK是否集成成功的方法。

3.1. 数据上报策略

统计服务SDK会先把数据记录缓存在本地,然后根据开发者设定的数据上报策略,触发上报流程。SDK中提供了一系列数据上报策略供开发者选择,这些策略包括:

UPLOAD_POLICY_REALTIME 实时上报。每当有一条新的记录,就会激发一次上报。

UPLOAD_POLICY_WIFI_ONLY 只在WIFI下上报。当设备处于WIFI连接时实时上报,否则不上报记录。

UPLOAD_POLICY_BATCH 批量上报。当记录在本地累积超过一个固定值时(100条),会触发一次上报。

UPLOAD_POLICY_WHILE_INITIALIZE
启动时候上报。每次应用启动(调用initialize方法)时候,会将上一次应用使用产生的数据记录打包上报。 UPLOAD_POLICY_INTERVAL
指定时间间隔上报。开发者可以指定从1分钟-60天之间的任意时间间隔上报数据记录。需要注意,由于SDK并没有使用安卓的实时唤醒机制,采用
Handler,因此采用此策略上报,SDK做不到严格的遵守开发者设定的间隔,而会根据应用数据采集的频率和设备休眠策略,会有一定的偏差。

UPLOAD_POLICY_DEVELOPMENT
调试模式。使用此策略,只有开发者手动调用一个接口才会触发上报,否则在任何情况下都不上报。SDK中提供了一个reportData()方法用于手动触发。这种策略主要用于开发者调试时候可手动控制上报时机,便于做数据对比。

统计服务的本地缓存最长会永久保存,只要在数据有效期内上报流程被触发,就会将本地之前没上报成功的所有数据打包ZIP格式上报。如果数据上报成功,则会把已经成功的数据从本地删除。
默认的数据上报策略是UPLOAD_POLICY_INTERVAL,默认的上报时间间隔是三分钟(非wifi是30分钟) 现在也只有默认策略有效。

设置上报策略的代码示例如下: // 设置策略模式 第一个是策略模式 ,第二是是时间(单位/分)
TcStatInterface.setUploadPolicy(TcStatInterface.UploadPolicy.UPLOAD_POLICY_INTERVA,
3);

API说明

4.1. API细节 请具体看demo 注释

集成步骤

4.1 依赖项目

gradle中配置依赖module, 将项目增加为自己的子模块

dependencies {
 compile project(':StatInterface')
}

4.2 配置Settings.gradle

include ':app' ,':StatInterface'

4.3 加入权限 见2.1的说明。 4.4 初始化 见2.3说明 具体见demo

4.5 其他 如果你还在用Eclispe,直接用源码或者依赖jar TcStatSdk_1.0.jar

注意

目前服务端代码需要你自我实现,数据结结构按客户端数据Modle实现即可。

TcStatInterface 客户端SDK功能概述SDK使用配置APP常规数据统计API说明注意 官网

https://github.com/NeglectedByBoss/TcStatInterface

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


BBGestureBack Full screen return gesture(全屏手势返回 滑动返回 pop 动画效果) iOS 侧滑返回
Framework7 或者叫 F7 是全功能的绑定 iOS 7 应用的 HTML 框架。Framework7 是免费开源的 HTML
iOS 调试库,支持 iOS8+,无需添加任何代码,方便 iOS 开发和测试。 屏幕截图 使用教程
DarkModeKit是在Apple官方的深色模式发布之前设计和开发的。 它提供了一种机制来支持iOS 11+(包括iOS 13)上的应用程序的暗模式。
SimpleNote iOS 版客户端。SimpleNote 是一款在多平台上发布的笔记应用。 开发准备条件:
Kivy iOS,此工具旨在为 iOS 编译必要的库以运行应用程序并管理 Xcode 项目的创建。
TYDownloadManager是一个iOS的文件下载管理器包,可以提示下载过程中的最新进展和状态的变化。
mruby是一款轻量级的Ruby实现,遵循ISO标准。它可以以解释的形式或者在VM上编译和执行形式运行。
因为涉嫌危害消费者的隐私问题,苹果公司决定停止使用原有的UDID系统,移动应用软件开发者们正在竞相寻找新的替代方案。移动应用销售平台Appsfire目前推出了OpenUDID,它是一个开源版本的UDID。Appsfire声称他们已
EasyIOS 开源至今已经1周年,全新Swift版本今日发布,支持利用HTML来开发IOS应用,支持模拟器实时预览,基于MVVM思想,HTML数据绑定,反射所有
在 iOS 领域使用 Pod 来进行组件化开发时常常需要手动进行一系列的操作,来实现Pod 组件的更新目的。特别是一些业务关联性比较强的 Pod
PokerCard,一款 iOS 多样式弹窗开源库。 Basic Usage import PokerCard class ViewController: UIViewController {
MiaowShow MiaowShow是高仿《喵播APP》的iOS视频直播项目。 项目具体讲解地址 iOS视频直播初窥:高仿<喵播APP>
ZJAttributedText 是高性能轻量级富文本框架 前言 如果遇到上面一个需求, 你会怎么处理, 若干个 UILabel + UIImageView? NSAttributedString拼接? CoreText?
DynamicCocoa,是滴滴 App 架构组自研的 iOS 动态化方案,可以让现有的 Objective-C 代码转换生成中间代码(JS),下发后动态执行。滴滴客户端 App 架构团队表示正在积极准备相关事项,计划于 2017 年初开源。
ObjectiveSupport aims to bring some of the popular Rubyisms found in ActiveSupport to Objective-C. This project originated as a component of
StyleKit 是能让你使用一个简单的 JSON 文件美化你的应用的微框架。 它如何工作?
XCActionBar 是一个用于 Xcoded 的通用生产工具。
Social Go是一个基于iOS平台,在人群中获取小精灵的雷达和匿名聊天App。它使用Swift
Swift版本最新发布 : https://github.com/EasyIOS/EasyIOS- Swift 全新基于MVVM(Model-View-ViewModel)编程模式架构,开启EasyIOS开发函数式编程新篇章。