草庐IT

运营数据采集难?集成华为动态标签管理服务轻松搞定!

HMS Core 2023-03-28 原文

在日常运营中,快速获取运营数据并发送到分析平台和归因平台,是营销者工作的重中之重。华为动态标签管理,通过配置规则或可视化埋码的方式,帮助运营及开发人员实现数据的快速获取和分发,提高工作效率。今天我们主要从集成SDK的角度来讲讲为什么要使用华为动态标签管理服务(DTM),以下简称DTM。

一、 传统SDK集成三大痛点

在APP的运营过程中,时常会遇到需要了解运营数据、分析数据的情况,经常需要同时接入多家数据分析平台或广告归因平台,这也带来了三大痛点:

痛点一:开发成本高,资源浪费大

在企业场景中,我们经常会碰到类似的情况,例如:在做商城App的时候,产品经理希望统计某个商品的购买量,运营的同事需要统计APP的启动数,新增客户量,或者开发人员需要了解APP在用户手中的使用情况,市场人员想要看看广告带来的效益,不同的业务场景,往往需要接入多个不同的第三方数据分析平台,多达数十家,逐个接入不同广告SDK,开发成本高,时间周期长,甚至还会导致APP的程序增大,维护困难,结构混乱。

痛点二:安全隐患,风险指数大

前不久,工信部发布了《关于下架侵害用户权益 App 名单的通报》,通报中提到,有 5 家企业在 App 不同版本中反复出现同类问题,包括违规收集个人信息、强制用户使用定向推送功能、频繁过度强制索权等。这5 家企业,在平台排查后发现了同一个问题主要在于第三方 SDK 等方面。类似第三方 SDK 插件违法调用手机信息的情况屡见不鲜,集成多个第三方平台的SDK对于企业来说也存在很大的安全隐患。

痛点三:操作复杂,工作效率低

对于很多不熟悉SDK接入与集成的人来说,接SDK每次都让人感觉十分头疼,云里雾里,但对于一些熟悉SDK接入的人来说,有时一弄就要十几个,不断重复的操作,不仅效率低,而且没有成就感。

二、为什么要集成华为动态标签管理服务(DTM)SDK?

华为动态标签管理服务,无需集成多个第三方的SDK,只需接入DTM SDK,即可实现数据的快速获取和发送。

优势一:快速集成,无需重新发布App

我们先来通过两张图来了解一下集成了DTM SDK 和没有集成DTM SDK的情况。

当未使用DTM时,若使用了多个归因分析平台,则需要在App中集成多个归因分析平台的SDK,因此会使App包增大;而且同一事件将会同时被多个SDK追踪并分别发送,增加了App的复杂性。如果增加了归因平台,还需要集成新的SDK。

当使用DTM后,只需要集成DTM SDK,就可以完成针对多个归因分析平台的数据发送。当对发送事件进行调整时,通过DTM的Portal页面就可以实现动态、灵活的发送数据及配置策略的调整,并且无需修改代码或发布新App版本。

优势二:安全可靠,保障数据安全

DTM SDK在应用打包时会被集成进您的应用中,SDK会随着相关接口的调用而启动和关闭,不会在后台做任何额外动作。

  1. DTM SDK只提供能力接口,不会保存和收集任何来自用户的个人数据。
  2. DTM SDK数据不会自动上报到其他分析平台,而是由运营或开发人员在配置时决定要上报的平台。
  3. 遇到恶意数据、数据违法等情况,可调用HUAWEI Analytics的setAnalyticsEnabled接口关闭数据上报。

优势三:操作简单,零基础也能轻松掌握

目前DTM已接入数十家第三方分析平台,它的无代码灵活动态数据标签能力,零基础人员也能轻松掌握,省去部门之间的沟通成本,不需要技术开发人员即可实现营销数据随需跟踪,可以更及时、快速了解各类数据,根据得到的数据从而采用相应的运营方案,更好地提高应用的价值。

欲了解更多详情,请参阅:

动态标签管理官网

获取开发指导文档

动态标签管理快速集成

如遇问题,可在线提交

华为HMS Core官方论坛 
解决集成问题请到Stack Overflow

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

有关运营数据采集难?集成华为动态标签管理服务轻松搞定!的更多相关文章

  1. ruby - 使用 ruby​​ 和 savon 的 SOAP 服务 - 2

    我正在尝试使用ruby​​和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我

  2. ruby - i18n Assets 管理/翻译 UI - 2

    我正在使用i18n从头开始​​构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在ruby​​onrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi

  3. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  4. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  5. ruby - 在院子里用@param 标签警告 - 2

    我试图使用yard记录一些Ruby代码,尽管我所做的正是所描述的here或here#@param[Integer]thenumberoftrials(>=0)#@param[Float]successprobabilityineachtrialdefinitialize(n,p)#initialize...end虽然我仍然得到这个奇怪的错误@paramtaghasunknownparametername:the@paramtaghasunknownparametername:success然后生成的html看起来很奇怪。我称yard为:$yarddoc-mmarkdown我做错了什么?

  6. ruby-on-rails - 启动 Rails 服务器时 ImageMagick 的警告 - 2

    最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru

  7. ruby-on-rails - s3_direct_upload 在生产服务器中不工作 - 2

    在Rails4.0.2中,我使用s3_direct_upload和aws-sdkgems直接为s3存储桶上传文件。在开发环境中它工作正常,但在生产环境中它会抛出如下错误,ActionView::Template::Error(noimplicitconversionofnilintoString)在View中,create_cv_url,:id=>"s3_uploader",:key=>"cv_uploads/{unique_id}/${filename}",:key_starts_with=>"cv_uploads/",:callback_param=>"cv[direct_uplo

  8. ruby - Ruby 有 `Pair` 数据类型吗? - 2

    有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳

  9. ruby-on-rails - 获取 inf-ruby 以使用 ruby​​ 版本管理器 (rvm) - 2

    我安装了ruby​​版本管理器,并将RVM安装的ruby​​实现设置为默认值,这样'哪个ruby'显示'~/.rvm/ruby-1.8.6-p383/bin/ruby'但是当我在emacs中打开inf-ruby缓冲区时,它使用安装在/usr/bin中的ruby​​。有没有办法让emacs像shell一样尊重ruby​​的路径?谢谢! 最佳答案 我创建了一个emacs扩展来将rvm集成到emacs中。如果您有兴趣,可以在这里获取:http://github.com/senny/rvm.el

  10. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

随机推荐