如何使用Android可视化埋点
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 动态标签管理服务详情,请参阅官网
了解更多详情>>
访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHub、Gitee
关注我们,第一时间了解 HMS Core 最新技术资讯~
如何使用Android可视化埋点的更多相关文章
- App可视化埋点技术原理大揭秘
一.背景 运营者能够对用户行为进行分析的前提,是对大量数据的掌握.在以往,这个数据通常是由开发者在控件点击.页面等事件中,一行行地编写埋点代码来完成数据收集的.然而传统的操作模式每当升级改版时,开发和 ...
- 老李分享:Android -自动化埋点 1
老李分享:Android -自动化埋点 当我们开发一款Android应用上线后,希望能收集一些用户操作的行为数据,比如用户在某个页面点击了多少次,在某个控件被点击了多少次,在某个页面停 留了多少时 ...
- 埋点(Event Tracking)vs 无埋点(Codeless Tracking) vs 可视化埋点(Visual Event Tracking)
在理解什么是埋点之前,首先需要了解一些基础知识:(以下摘自:http://www.chinawebanalytics.cn/auto-event-tracking-good-bad-ugly/) 我们 ...
- 可视化埋点 & XPath
可视化埋点 & XPath https://www.w3.org/TR/xpath-full-text-30/ 数据的准确性 采集时机 数据发送策略 full XPath demo XML & ...
- 老李分享:Android -自动化埋点 3
又一个问题,代码中的writeLog方法到底要记录哪些数据作为log信息呢?log信息中最重要的是能让开发者看出来哪个界面被打开或者哪个控件被点 击.对于界面,可以记录其类名:对于控件,一般没有确定的 ...
- 老李分享:Android -自动化埋点 2
除了上述的事件,Android提供了一个OnTouchListener的监听器,当事件传递到控件的时候,如果控件注册了这个监听器,则会执行监听器中的onTouch方法.同时,如果它返回true,则事件 ...
- Android无埋点数据收集SDK关键技术
前言 鉴于日益强烈的精细化运营需求,网易乐得从去年开始构建大数据平台,<<无埋点数据收集SDK>>因此立项,用于向大数据平台提供全量,完整,准确的客户端数据. << ...
- Android 文章合集 200+ 篇
code小生 一个专注大前端领域的技术平台 公众号回复Android加入安卓技术群 镇楼 2017 文章合集 2017 年度文章分类整理 下面是 2018 年公众号所发表的文章分类整理 面经 一年经验 ...
- Android埋点技术分析
1.现有的几种埋点技术的实现原理和优劣分析 (1)代码埋点:将收集数据的代码直接写在需要的地方,当用户点击某个控件或者打开某个页面时调用到该部分代码完成数据的收集. 优势:准确性高,收集数据和发送数据 ...
随机推荐
- 常用的dos指令
•常用的DOS指令 dir:列出当前目录下的文件及文件夹 md:创建文件 rd:删除文件 cd:进入指定目录 cd..:退回到上一级目录 cd\:退回到根目录 del:删除文件 exi ...
- pycharm远程调试、开发(详细操作)
如果仅是远程开发,新建 ssh Interpreter 并 apply tools -> deployment -> browser remote host 即可 1.服务器侧准备 准备调 ...
- Django1.11 添加markdown语法支持
pip install markdown 在view.py 的视图界面:导入,圈起来的那两个包 对post进行处理, models.py 详情如下 测试,效果如图
- Redis快速入门:初识Redis
[IT168 专稿]在之前的文章中介绍了<Redis快速入门:选择Key-Value Store>,今天给大家介绍Redis的入门知识.Redis是一个开源的使用ANSI C语言编写.支持 ...
- vs2017连接sqlsever数据库
vs2017连接mysql数据库操作步骤 怎样使用vs2017连接数据库 [C++]VS2015/VS2017连接Mysql数据库教程
- Nacos:Nacos与OpenFeign的对接使用
Nacos(三):Nacos与OpenFeign的对接使用 上篇文章中,简单介绍了如何在SpringCloud项目中接入Nacos作为注册中心,其中服务消费者是通过RestTemplate+Rib ...
- ServletConfig对象和ServletContext对象有什么区别?
一个Servlet对应有一个ServletConfig对象,可以用来读取初始化参数. 一个webapp对应一个ServletContext对象. ServletContext对象获取初始化定义的参数. ...
- 为什么在重写 equals 方法的时候需要重写 hashCode 方法?
因为有强制的规范指定需要同时重写 hashcode 与 equal 是方法,许多容器类, 如 HashMap.HashSet 都依赖于 hashcode 与 equals 的规定.
- vue中ajax请求发送
示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8& ...
- 学习MFS(四)
一.搭建Master Server 1.安装相关编译器.工具包 [root@master ~]# yum -y install gcc gcc-c++ zlib-devel 2.创建进程用户 [roo ...