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. 那些年,Android开发踩过的坑

    首先讲一讲环境配置吧,一般刚上手Android编程,推荐的两款软件开发工具有Eclipse和Andriod Studio,配置环境来讲呢,Android Studio配置环境要快得多,而且比起Ecli ...

  2. Hive框架

    1.什么是Hive? Hive 是基于Hadoop之上的数据仓库.2.什么是数据仓库? 数据仓库其实就是一个数据库 数据仓库是一个面向主题的,集成的,不可更新的,随时间不变化的数据集合,它用于支持 企 ...

  3. [SPDK/NVMe存储技术分析]012 - 用户态ibv_post_send()源码分析

    OFA定义了一组标准的Verbs,并提供了一个标准库libibvers.在用户态实现NVMe over RDMA的Host(i.e. Initiator)和Target, 少不了要跟OFA定义的Ver ...

  4. DDOS流量攻击

    0x01 环境 包含2台主机 attact 作为攻击方,使用Centos7.2 windows_server ,用于被攻击,同时抓包分析流量 ,任意版本均可.安装wireshark,用于抓包 0x02 ...

  5. Molecule实现数栈至简前端开发新体验

    Keep It Simple, Stupid. 这是开发人耳熟能详的 KISS 原则,也像是一句有调侃意味的善意提醒,提醒每个前端人,简洁易懂的用户体验和删繁就简的搭建逻辑就是前端开发的至简大道. 这 ...

  6. seqlist template

    1 #include <iostream.h> 2 typedef int ElemType; 3 typedef struct{ 4 ElemType *elem; 5 int leng ...

  7. Redis的删除机制

    Redis的删除机制 Redis的使用分两点: 性能如下图所示,我们在碰到需要执行耗时特别久,且结果不频繁变动的SQL,就特别适合将运行结果放入缓存.这样,后面的请求就去缓存中读取,使得请求能够迅速响 ...

  8. Mybatis框架基础入门(一)--简介及优势

    一.什么是Mybatis 这里借用官网的一句话介绍什么是mybatis:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC ...

  9. Java 语言如何进行异常处理,关键字:throws、throw、 try、catch、finally 分别如何使用?

    Java 通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口.在 Java 中,每个异常都是一个对象,它是 Throwable 类或其子类的实例.当一个方法出现异常后便抛出一 ...

  10. RabbitMQ踩坑记

    之前我们给我们的系统加了一个使用SpringAOP+RabbitMQ+WebSocket进行实时消息通知功能(https://www.cnblogs.com/little-sheep/p/993488 ...