Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
171 changes: 140 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
# TcStatInterface
# Sky Monitoring 天眼
#Android StaticFrameWork
自定义统计SDK, 完全放弃第三方平台,让app拥有自主的数据统计功能
>支持页面统计

>支持Activity统计

>自定义事件统计
>APP启动退出统计,不同渠道统计

>APP启动退出唤醒自动统计

>crsah日志统计




Expand All @@ -16,13 +22,13 @@

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

SDK使用配置
----


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

2.1. 配置AndroidManifest.xml文件
SDK支持的最低安卓版本为2.2。
Expand Down Expand Up @@ -84,51 +90,154 @@ APP常规数据统计


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

// 设置策略模式 第一个是策略模式 ,第二是是时间(单位/分)
TcStatInterface.setUploadPolicy(TcStatInterface.UploadPolicy.UPLOAD_POLICY_INTERVA, 3);







API说明
## API说明
--

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

请具体看demo 注释


5. 集成步骤
4.1 依赖项目
## 集成步骤

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


dependencies {

compile project(':StatInterface')
}
**Gradle:**

root:

repositories {
maven { url "https://jitpack.io" }
jcenter()
}

4.2 配置Settings.gradle
Module:

dependencies {
compile 'com.tamic:StatInterface:2.1'

}

include ':app' ,':StatInterface'

4.3 加入权限
5.3 加入权限

见2.1的说明。
4.4 初始化
见2.3说明 具体见demo

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

Application的onCreate():

// assets
String fileName = "stat_id.json";

注意
--
目前服务端代码需要你自我实现,数据结结构按客户端数据Modle实现即可。
String url = "http://www.baidu.com";

// init statSdk
TcStatInterface.initialize(this, appId, "you app chanel", fileName);
// set upload url
TcStatInterface.setUrl(url);

  见Wiki说明 参见demo

5.5 AppAction

此统计包含是三个类型

1. App启动


TcStatInterface.recordAppStart();

2. App退出


TcStatInterface.recordAppEnd();

3. APP唤醒

> 作者:Tamic : http://www.jianshu.com/p/cd83e81b78aa
无需开发者上层使用,sdk会自动打点记录

> 统计数据存储前期:Zhangliang



5.6 事件统计

  记录某个动作,并包含事件参数时,


findViewById(R.id.id_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TcStatInterface.onEvent("main", "onlick", "send data");
//reportData
TcStatInterface.reportData();

}

});


findViewById(R.id.id_button2).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

// test
HashMap<String, String> map = new HashMap<>();
map.put("id1", "xxx");
map.put("id2", "yyy");

TcStatInterface.onEvent("openNext", map);

Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);

}

});




5.7 Activity统计


 统计activity启动时间,从哪个地方跳过来,业务开发者可以自己写一个base,让其他activity继承Base就行,就可完成自动搜集功能


public class BaseActivity extends Activity {

@override
protected void onResume() {
super.onResume();
//可以直接传this
TcStatInterface.recordPageStart(“ID”);
}

protected void onPause() {
super.onPause();
TcStatInterface.recordPageEnd();
}
}



注意
--

目前服务端代码需要你自我实现,数据结结构按客户端数据Model实现即可。收到数据落地到数据库,需要查看的时候即可查看,如果后端有可视化界面,那么更好不过。

 客户端:搜集,存储,上报。
 服务端:接受数据,落地数据库,最后做大数据处理。

> 作者:
>  FramWork [@Tamic](https://github.com/Jianglei0716) : http://www.jianshu.com/p/cd83e81b78aa

>crash:[@jianglei0716](https://github.com/Jianglei0716)
26 changes: 0 additions & 26 deletions StatInterface/build.gradle

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

1 change: 0 additions & 1 deletion StatInterface/build/intermediates/bundles/debug/R.txt

This file was deleted.

Loading