Android可视化埋点是Android全埋点的增强。开发者可以将App界面同步至DTM界面,并在DTM界面通过可视化点击的方式添加埋点事件。目前Android可视化埋点包含两种埋点方式:普通可视化埋点和按Tag模板埋点。

相比于代码埋点,可视化埋点有以下优势:

研发人员仅需要完成DTM SDK集成,免去代码添加埋点的开发成本。

技术门槛低,可以直接在DTM界面上点击添加埋点事件,适合运营人员直接使用。

在应用发布后仍然可以灵活的添加埋点事件,解决前期埋点不充分的问题。

本期,我们将使用按Tag模板埋点的方式,以购物商城App为例,介绍如何使用Android可视化埋点将埋点事件发送到HUAWEI Analytics。在开始配置之前,您的App需要已集成华为分析SDK和DTM Android SDK5.0及以上版本。为便于实时看到测试数据,请通过adb命令打开调试开关(adb shell setprop debug.huawei.hms.analytics.app <package_name> )

1 建立连接

首先,登录AppGallery Connect网站,进入动态标签管理服务页面。

点击“可视化埋点”菜单,点击“按Tag模板埋点”按钮。

点击“新建”按钮,添加Huawei Analytics配置,点击“保存”按钮(如果您已经创建过模板,可以点击左侧勾选按钮选中)。

随后,您的页面右侧二维码会自动刷新,打开手机浏览器,扫描二维码。点击“开始连接”按钮,点击”打开“按钮,将App页面同步至网页端。(若提示二维码失效,点击二维码刷新)

打开可圈选控件开关,可以更加清晰地了解哪些控件可以被埋点。当前只支持设置了View.setOnClickListener的控件可被圈选埋点。

Android可视化埋点支持三种埋点类型:当前位置埋点、相同文字埋点和同类元素埋点。下面将一一举例介绍:

当前位置埋点

当前位置埋点适用于App页面布局稳定的场景中。如果App页面布局易变,请考虑使用相同文字埋点。

首先,以”加入购物车“事件为例,介绍如何使用”当前位置埋点“。进入商品详情页面,鼠标选中“加入购物车”按钮并单击,在弹出的对话框中选择”当前位置“选项,点击”确定“按钮。在右侧表单中添加埋点名称以及相关参数。

您可以根据实际需要手动输入相关内容。您也可以通过”加号“按钮添加内容,您还可以通过”小手“按钮选择App页面中的元素作为内容。配置完成后,点击右下角确定按钮完成配置

验证配置是否正确,能否将”加入购物车“事件发送到Huawei Analytics。点击概览页面的预览按钮,进入版本预览页面,用移动端浏览器扫描二维码或者通过adb命令启动预览。

点击App中的”加入购物车“按钮,触发埋点事件上报,在Huawei Analytics分析平台菜单栏"应用调试"中查看上报的事件是否与DTM中的配置一致。至此,DTM的配置验证完成。

接下来可以发布DTM版本,让配置对现网所有App生效。进入版本管理页面,创建并发布一个版本。

相同文字埋点

当App页面布局发生变化时,”当前位置“埋点可能会失效。为了降低该缺陷带来的影响,提供了相同文字埋点。当被埋点控件位置易变,内容不变时,优先选择相同文字埋点。

以”购买商品“事件为例(此时“购买”按钮位置易变),介绍如何使用”相同文字埋点“。进入商品详情页面,鼠标选中“购买”按钮并单击,在弹出的对话框中选择”相同文字“选项,点击”确定“按钮。

在右侧表单中添加埋点名称以及相关参数。您可以根据实际需要手动输入相关内容。您也可以通过”加号“按钮添加内容,您还可以通过”小手“按钮选择App页面中的元素作为内容。配置完成后,点击右下角确定按钮完成配置

验证配置是否正确,能否将”购买商品“事件发送到HUAWEI Analytics。点击概览页面的预览按钮,进入版本预览页面,用移动端浏览器扫描二维码或者通过adb命令启动预览。

点击App中的购买按钮,触发埋点事件上报,在HUAWEI Analytics分析平台菜单栏"应用调试"中查看上报的事件是否与DTM中的配置一致。至此,DTM的配置验证完成。

接下来可以发布DTM版本,让配置对现网所有App生效。进入版本管理页面,创建并发布一个版本。

同类元素埋点

对于通过 ListView、GridView、RecyclerView、ViewPager 实现的列表页面:比如商品列表页面,轮播图。

如果想统计列表中的每一项埋点事件,通过当前位置埋点或者相同文字埋点,是很难实现的,同类元素埋点正是为解决这一问题而产生的。

当您使用同类元素埋点对列表中的某一项进行埋点时,与该埋点项具有相同布局的项也会被埋上相同事件。

下面以商品列表页面为例,来详细介绍如何使用同类元素埋点。进入“商品列表”页面,鼠标选中其中任何一项并单击,在弹出的对话框中选择”同类元素“选项,点击”确定“按钮。此时你会看到与被埋点项具有相同布局的项也被加上绿色背景框。

在右侧表单中添加埋点名称以及相关参数。您可以根据实际需要手动输入相关内容。您也可以通过”加号“按钮添加内容,您还可以通过”小手“按钮选择App页面中的元素作为内容。配置完成后,点击右下角确定按钮完成配置。验证配置是否正确,能否将商品列表项事件发送到HUAWEI Analytics。

点击概览页面的预览按钮,进入版本预览页面,用移动端浏览器扫描二维码或者通过adb命令启动预览。随机点击App中的商品列表中的某一项,触发埋点事件上报,在HUAWEI Analytics分析平台菜单栏"应用调试"中查看上报的事件是否与DTM中的配置一致。至此,DTM的配置验证完成。

接下来可以发布DTM版本,让配置对现网所有App生效。进入版本管理页面,创建并发布一个版本。

欲了解更多HMS Core 动态标签管理服务详情,请参阅官网

了解更多详情>>

访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

如何使用Android可视化埋点的更多相关文章

  1. App可视化埋点技术原理大揭秘

    一.背景 运营者能够对用户行为进行分析的前提,是对大量数据的掌握.在以往,这个数据通常是由开发者在控件点击.页面等事件中,一行行地编写埋点代码来完成数据收集的.然而传统的操作模式每当升级改版时,开发和 ...

  2. 老李分享:Android -自动化埋点 1

    老李分享:Android -自动化埋点   当我们开发一款Android应用上线后,希望能收集一些用户操作的行为数据,比如用户在某个页面点击了多少次,在某个控件被点击了多少次,在某个页面停 留了多少时 ...

  3. 埋点(Event Tracking)vs 无埋点(Codeless Tracking) vs 可视化埋点(Visual Event Tracking)

    在理解什么是埋点之前,首先需要了解一些基础知识:(以下摘自:http://www.chinawebanalytics.cn/auto-event-tracking-good-bad-ugly/) 我们 ...

  4. 可视化埋点 & XPath

    可视化埋点 & XPath https://www.w3.org/TR/xpath-full-text-30/ 数据的准确性 采集时机 数据发送策略 full XPath demo XML & ...

  5. 老李分享:Android -自动化埋点 3

    又一个问题,代码中的writeLog方法到底要记录哪些数据作为log信息呢?log信息中最重要的是能让开发者看出来哪个界面被打开或者哪个控件被点 击.对于界面,可以记录其类名:对于控件,一般没有确定的 ...

  6. 老李分享:Android -自动化埋点 2

    除了上述的事件,Android提供了一个OnTouchListener的监听器,当事件传递到控件的时候,如果控件注册了这个监听器,则会执行监听器中的onTouch方法.同时,如果它返回true,则事件 ...

  7. Android无埋点数据收集SDK关键技术

    前言 鉴于日益强烈的精细化运营需求,网易乐得从去年开始构建大数据平台,<<无埋点数据收集SDK>>因此立项,用于向大数据平台提供全量,完整,准确的客户端数据. << ...

  8. Android 文章合集 200+ 篇

    code小生 一个专注大前端领域的技术平台 公众号回复Android加入安卓技术群 镇楼 2017 文章合集 2017 年度文章分类整理 下面是 2018 年公众号所发表的文章分类整理 面经 一年经验 ...

  9. Android埋点技术分析

    1.现有的几种埋点技术的实现原理和优劣分析 (1)代码埋点:将收集数据的代码直接写在需要的地方,当用户点击某个控件或者打开某个页面时调用到该部分代码完成数据的收集. 优势:准确性高,收集数据和发送数据 ...

随机推荐

  1. SP2742题解

    晚自习用10min推出结论,太屑了 设 \(S=\sum_{i=1}^n a_i\),很显然每个位置的答案 \(ans_i\) 只和 \(a_i\) 和 \(S\) 有关.让我们打个表,找一下规律: ...

  2. LGP5089题解

    考试的一道题,考场上sb了没写出来,然后在两天后的英语课上胡出来了( 首先猜一个奇怪的结论: 对于元素 \((a,b)\),看做连接第 \(a\) 列和第 \(b\) 行的一条边,那么如果一行和一列在 ...

  3. linux 常用命令:

    查看启动进程命令 ps -ef |  grep donet 1.vi 进入编辑界面 2.ls,ll 查看命令 3.cd 进入命令 4.i 进入插入界面 5. esc 退出编辑界面 6.输入:冒号,进入 ...

  4. petite-vue源码剖析-逐行解读@vue/reactivity之reactive

    在petite-vue中我们通过reactive构建上下文对象,并将根据状态渲染UI的逻辑作为入参传递给effect,然后神奇的事情发生了,当状态发生变化时将自动触发UI重新渲染.那么到底这是怎么做到 ...

  5. 4月12日 python学习总结 继承和派生

    一.继承 什么是继承:   继承是一种新建类的方式,在python中支持一个子类继承多个父类   新建类称为子类或派生类   父类可以称之为基类或者超类   子类会遗传父类的属性 2.  为什么继承 ...

  6. Go 语言控制台输入&生成随机数

    Go 语言控制台输入&生成随机数 1. 不同基础类型之间的转化对于不同的基础类型之间的转化,Go 提供了 strconv包.它实现了字符串与其他基本数据类型之间的转化.其中最常用的数值转化函数 ...

  7. 随手用Java写的bilibili缓存视频转换器(合成分离的视频和音频)

    使用java随手写成,有需要可以自行修改. 项目使用到了fastjson,可以自行替换成其他json解析工具. 写这个的原因是因为下载到的其他工具弄出来的视频标题过长(应该取entry.json中的s ...

  8. WebGPU 工具分享 - WGSL 代码高亮插件(VSCode)与预处理工具

    WGSL 还在积极讨论中,虽然各位大佬不是很满意这个新生儿. 不过,社区已经有了基础的实验性工具(VSCode 插件),并支持了较新的语法. ① WGSL 插件 这个插件支持对文件扩展名为 .wgsl ...

  9. Go 语言 切片的使用(增删改查)

    Go 语言 切片的使用(增删改查) 引言Golang 的数组是固定长度,可以容纳相同数据类型的元素的集合.但是当长度固定了,在使用的时候肯定是会带来一些限制,比如说:申请的长度太大会浪费内存,太小又不 ...

  10. SpringBoot项目单元测试不经过过滤器问题

    SpringBoot使用MockMvc:https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-featu ...