Android 接入第三方数数科技平台

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

一个成熟的App必然不可缺少对用户进行数据分析和梳理相应的业务需求,比如说产品经理或者发行部门需要对新上线的一个需求功能或者活动进行用户满意度调查,那么他们需要通过一些真实的用户使用数据来进行分析才行。这个时候就App就需要接入一些第三方数据分析的平台来观察数据的走向了。


提示:以下是本篇文章正文内容,下面案例可供参考

一、数数科技平台是什么?

数数科技是一家中国的科技公司,专注于提供数据分析和人工智能解决方案。他们的业务涵盖数据采集、数据处理、数据挖掘和分析、人工智能算法开发等领域。通常情况下,接入 TE 需要三个步骤:首先根据业务需求的整理,梳理出数据采集方案,数数科技的分析师会协助您完成这一部分工作;然后,由研发人员根据数据采集方案完成数据接入工作;最后是验证数据接入正确性。简单的总结来说是用于产品、研发、测试查看的第三方数据分析平台。
数数科技官网传送门

二、使用步骤

1.集成SDK

自动集成库,在 Project 级别的 build.gradle 文件中添加如下配置依赖

Java 复制代码
buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }
}

在 Module 工程目录下的 build.gradle文件中添加依赖项:

kotlin 复制代码
dependencies {
    implementation 'cn.thinkingdata.android:ThinkingAnalyticsSDK:2.8.3'
}

手动集成库,下载并解压 Android SDK

libs 文件夹中添加 ThinkingSDK.aar


在 build.gradle 添加如下配置

kotlin 复制代码
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
}

2. 初始化

kotlin 复制代码
// 在主线程中初始化 SDK 
//方式一
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, APPID, SERVER_URL);
//方式二
TDConfig config = TDConfig.getInstance(this, APPID, TE_SERVER_URL);
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(config);

参数说明:

APPID: 您的项目的 APPID,可通过在 TE 项目管理页面获取

SERVER_URL: 数据上传的 URL

如果您对接的是云服务,请在项目管理->接入配置中查看上报地址。

如果您使用私有化部署版本,您可以自定义数据采集地址。


值得一提的是一般 config.setMode() 可以设置TDConfig.ModeEnum.DEBUGTDConfig.ModeEnum.NORMAL用于测试和正式开放环境区分。

3. 发送事件和设置账号id

在用户进行登录时,可调用 login 来设置用户的账号 ID, TE 平台将会以账号 ID 作为身份识别 ID,并且设置的账号 ID 将会在调用 logout 之前一直保留。多次调用 login 将覆盖先前的账号 ID 。

kotlin 复制代码
// 用户的登录唯一标识,此数据对应上报数据里的#account_id,此时#account_id的值为TA
instance.login("TA");

您可以调用 track 来上传事件,建议您根据先前梳理的埋点文档来设置事件的属性,此处以用户点击作为范例,传入上报新老用户做区分。

kotlin 复制代码
try {
    JSONObject properties = new JSONObject();
    properties.put("user_type","类型");
    instance.track("click_type",properties);
} catch (JSONException e) {
    e.printStackTrace();
}

4. 验证发送事件是否成功

点击上报按钮触发上报事件,查看log日志可以看见上报的详细信息。

同时在数数平台的看板也能看到这条数据上报是成功的,证明发送事件是没有问题的。

小结

数数平台的接入并不困难,具体的埋点方案以及业务流程需要你根据产品的需求去上报。需要注意的是在不设置账号id的时候数数会自动上传一个id,此时如果移动端和后端需要做账号绑定的话可能会存在问题,账号id不一致的情况。这种问题在接入前商量好就不会出现的。

相关推荐
葱段7 分钟前
【Compose】Android Compose 监听TextField粘贴事件
android·kotlin·jetbrains
用户20187928316716 分钟前
Android 输入事件是如何发送到目标窗口的
android
凡小烦2 小时前
Coil源码解析
android
摸鱼仙人~2 小时前
如何设计一个既提供绘图Tools又提供example_data的MCP服务器:
android·服务器·javascript
雨白2 小时前
手把手构建一个安全、健壮的 ContentProvider
android
aningxiaoxixi3 小时前
android CALL 之 RIL、TELEDCOM、PHONE
android
Cachel wood4 小时前
后端开发:计算机网络、数据库常识
android·大数据·数据库·数据仓库·sql·计算机网络·mysql
会一丢丢蝶泳的咻狗4 小时前
uni-app安卓端强制更新apk包
android·前端·uni-app
筏.k5 小时前
C++: 类 Class 的基础用法
android·java·c++
yzpyzp5 小时前
gradle的 build时kaptDebugKotlin 处理数据库模块
android·数据库