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不一致的情况。这种问题在接入前商量好就不会出现的。

相关推荐
JMchen1231 小时前
Android后台服务与网络保活:WorkManager的实战应用
android·java·网络·kotlin·php·android-studio
crmscs2 小时前
剪映永久解锁版/电脑版永久会员VIP/安卓SVIP手机永久版下载
android·智能手机·电脑
localbob2 小时前
杀戮尖塔 v6 MOD整合版(Slay the Spire)安卓+PC端免安装中文版分享 卡牌肉鸽神作!杀戮尖塔中文版,电脑和手机都能玩!杀戮尖塔.exe 杀戮尖塔.apk
android·杀戮尖塔apk·杀戮尖塔exe·游戏分享
机建狂魔2 小时前
手机秒变电影机:Blackmagic Camera + LUT滤镜包的专业级视频解决方案
android·拍照·摄影·lut滤镜·拍摄·摄像·录像
hudawei9962 小时前
flutter和Android动画的对比
android·flutter·动画
lxysbly4 小时前
md模拟器安卓版带金手指2026
android
儿歌八万首5 小时前
硬核春节:用 Compose 打造“赛博鞭炮”
android·kotlin·compose·春节
消失的旧时光-19437 小时前
从 Kotlin 到 Dart:为什么 sealed 是处理「多种返回结果」的最佳方式?
android·开发语言·flutter·架构·kotlin·sealed
Jinkxs7 小时前
Gradle - 与Groovy/Kotlin DSL对比 构建脚本语言选择指南
android·开发语言·kotlin
&有梦想的咸鱼&7 小时前
Kotlin委托机制的底层实现深度解析(74)
android·开发语言·kotlin