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

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

文章目录

  • 前言
  • 一、数数科技平台是什么?
  • 二、使用步骤
    • 1.集成SDK
    • 2. 初始化
    • 3. 发送事件和设置账号id
    • 4. 验证发送事件是否成功
  • 小结


前言

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


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

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

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

二、使用步骤

1.集成SDK

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

buildscript {repositories {jcenter()mavenCentral()}
}

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

dependencies {implementation 'cn.thinkingdata.android:ThinkingAnalyticsSDK:2.8.3'
}

手动集成库,下载并解压 Android SDK
libs 文件夹中添加 ThinkingSDK.aar

在这里插入图片描述
在这里插入图片描述

在 build.gradle 添加如下配置

dependencies {implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
}

2. 初始化

// 在主线程中初始化 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 。

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

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

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

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

点击上报按钮触发上报事件,查看log日志可以看见上报的详细信息。
在这里插入图片描述
同时在数数平台的看板也能看到这条数据上报是成功的,证明发送事件是没有问题的。
在这里插入图片描述

小结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/590194.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法学习系列(十四):并查集

目录 引言一、并查集概念二、并查集模板三、例题1.合并集合2.连通块中点的数量 引言 这个并查集以代码短小并且精悍的特点,在算法竞赛和面试中特别容易出,对于面试而言,肯定不会让你去写一两百行的代码,一般出的都是那种比较短的…

服务器的TCP连接限制:如何优化并提高服务器的并发连接数?

🌈🌈🌈🌈🌈🌈🌈🌈 欢迎关注公众号(通过文章导读关注),发送【资料】可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景、中间件系列…

mysql基础-表操作

环境: 管理工具:Navicat 数据库版本:5.7.37 mysql的版本,我们可以通过函数,version()进行查看,本次使用的版本如下: 目录 1.管理工具 1.1创建表 1.2.修改表名 1.3.复制表 1.4.删除表 2…

python开发的app有哪些,python如何开发小软件

这篇文章主要介绍了python开发的app有哪些,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 Python 无处不在,可以说是现代的 C 编程语言,你可以在任何地…

寄存器的相关知识

CPU原理和结构详解 一、CPU概述 中央处理器(CPU),是计算机的核心部件,负责执行计算机程序中的指令,控制计算机的运算和逻辑判断。CPU的性能直接决定了计算机的运行速度和效率。 二、CPU工作原理 CPU的工作原理可以概括…

【记录】开始学习网络安全

本文持续更新学习进度 背景 在私企干了5年虚拟化、云原生相关的运维,学到了很多,但不成体系。老板是清华毕业法国留学在德勤干过,最后回国创业的野路子。我工作是为了更好的生活,我挺担心老板因为家庭变故或者炒个原油宝&#x…

【Vue3】请求参数

1. x-www-form-urlencoded 请求方式:POST nameJohn&age25export const userRegisterService (registerData) > {// 直接传入会是 json 格式// URLSearchParams 将 json 格式转为 x-www-form-urlencoded 格式const params new URLSearchParams();for (let…

54.网游逆向分析与插件开发-游戏增加自动化助手接口-项目需求与需求拆解

内容来源于:易道云信息技术研究院VIP课 项目需求: 为游戏增加VIP功能-自动化助手。自动化助手做的是首先要说一下背景,对于授权游戏来讲它往往年限都比较老,老游戏和新游戏设计理念是不同的,比如说老游戏基本上在10年…

<软考高项备考>《论文专题 - 40采购管理(4) 》

4 过程3-控制采购 4.1 问题 4W1H过程做什么管理采购关系、监督合同绩效、实施必要的变更和纠偏,以及关闭合同的过程作用:确保买卖双方履行法律协议,满足项目需求为什么做为保证采购活动顺利进行,采购物品符合项目要求谁来做组织…

easyx的窗口函数

文章目录 前言一、EasyX的颜色二、EasyX的坐标和设备1,EasyX的坐标2,EasyX的设备 三、窗口函数1,初始化窗口函数2,关闭绘图窗口3,设置窗口背景板颜色4,清空绘图设备 前言 easyx是针对c的图形库,…

360高级java面试真题

今年IT寒冬,大厂都裁员或者准备裁员,作为开猿节流主要目标之一,我们更应该时刻保持竞争力。为了抱团取暖,林老师开通了《知识星球》,并邀请我阿里、快手、腾讯等的朋友加入,分享八股文、项目经验、管理经验…

在kuboard页面配置harbor地址,配置私有仓库

点击项目-配置中心-密文,配置harbor地址 配置完仓库地址需要在对应的k8s master节点 worker节点,配置私有仓库地址要是不配置会报错 [rootk8smaster ~]# docker login 10.4.7.9:80/ -u admin -p Harbor12345 WARNING! Using --password via the CLI is…

第三代半导体SiC 专业术语及指标解释

SiC : 化合物半导体材料,第三代半导体材料代表,主要用于功率半导体领域 GaN : 化合物半导体材料,第三代半导体材料代表,主要用于高频射频领域 GaAs: 化合物半导体材料,第二…

shell中数组和元组---应用与了解

shell中数组和元组—应用与了解 在Shell中,数组和元组是两种用于存储多个值的数据结构。它们都可以存储多个元素,但它们的使用方式和语法有所不同。 一、数组 定义数组 在Shell中,可以使用或()来定义数组。例如: arr1("a…

二分查找 经典例题

// 返回都是 r// 区间划分为[l,mid] 和 [mid1,r]&#xff0c;选择此模板 int bsec1(int l, int r) {while (l < r){int mid (l r)/2;//此处不加下面加if (check(mid)) r mid;else l mid 1;}return r; }// 区间划分为[l,mid-1] 和 [mid,r]&#xff0c;选择此模板 int bs…

java常见面试题:什么是抽象类?什么是接口?它们之间的区别是什么?

抽象类和接口是Java中的两种抽象类型&#xff0c;它们都可以用来定义抽象方法和属性&#xff0c;但它们之间存在一些重要的区别。 抽象类&#xff08;Abstract Class&#xff09;&#xff1a; 抽象类是一种特殊的类&#xff0c;它不能被实例化。抽象类可以包含普通属性和方法…

使用spring boot实现异常的统一返回

在这个前后端分离的时代&#xff0c;一个 统一的数据格式非常重要。本次我们实现用spring boot实现一下返回给前端数据的统一格式&#xff0c;不再出现服务器500的错误。 新建一个spring boot项目&#xff0c;并导入knife4j的依赖。 写一个controller控制器&#xff0c;用来是…

数据结构:队列(链表和数组模拟实现)

目录 1.何为队列 2.链表模拟实现 2.1 节点和队列创建 2.2 初始化队列 2.3 入队操作 2.4 出队操作 2.5 遍历队列 2.6 获取队首和队尾元素 2.7 判断队列是否为空 2.8 完整实现 3. 数组模拟实现 3.1 创建队列 3.2 入队和出队操作 3.3 遍历队列 3.4 获取队首和队尾元…

数据转换的三剑客:Pandas 中 apply、map 和 applymap 方法的应用指南

数据转换的三剑客&#xff1a;Pandas 中 apply、map 和 applymap 方法的应用指南 ​ 在 Pandas 中&#xff0c;apply、map 和 applymap 是常用的数据转换和处理方法&#xff0c;它们为数据分析和数据处理提供了灵活的功能。这些方法可以根据具体的需求选择合适的方法进行操作。…