1.DTM简介
在本文中,我将依照一个To-Do List清单,为大家按步骤展示如何将华为动态标签管理器(HUAWEI Dynamic Tag Manager, DTM)集成到一个Android项目中。DTM是一个动态标签代码管理系统(Tag Manager System)。集成DTM后,你可以通过Web页面动态更新跟踪代码,轻松完成特定事件的跟踪并将数据传送给第三方分析平台,实现营销数据随需跟踪。
DTM 5.0版本新增支持JS SDK与可视化埋点功能,0编码技术门槛,产品或运营人员通过可视化圈选的方式即可按需添加埋点,不必依赖于开发人员修改代码、重新发布应用,大大提高埋点效率。有关可视化埋点功能,请参阅:【可视化埋点】。
2.To-Do List:
3.如何配置在AppGallery Connect中配置相关信息?
请按照如下步骤在AppGallery Connect中为你的安卓应用配置相关信息。
① 注册成为开发者
在开发应用前在华为开发者联盟网站上注册成为开发者并完成实名认证。
② 创建应用
登录 AppGallery Connect 网站,并创建项目。
项目创建好后,你会进入一个页面,左侧导航栏展示了AGC的多种功能菜单。
点击“添加应用“按钮,创建Android应用。特殊配置如下:
-
“选择平台”:选择“Android”。
-
“支持设备”:选择“手机”。
-
“应用分类”:选择“应用”。
③生成签名证书指纹
SHA Key可以使用keytool工具创建,也可以使用Android Studio创建。
-转到Android Studio右上角的gradle选项。
-转到project->app->task->android
-双击signingReport。
Android Studio 中会生成MD5, SHA1和SHA256。
④配置签名证书指纹
点击“SHA256证书指纹”后的图标,输入生成的SHA256指纹。配置完成后点击
,大约15分钟后生效。
⑤打开相关服务
在获取agconnect-services.json文件前,请确保已经完成华为分析服务的开通。
4. 如何集成HMS Core SDK到你的Android Studio项目中?
如果你使用的是Android Studio,可以通过Maven仓库集成HMS Core SDK。在开始开发应用之前,请将HMS Core SDK集成到您的Android Studio工程中。
① 添加当前应用的AppGallery Connect配置文件
a) 下载“agconnect-services.json”配置文件;
b) 将“agconnect-services.json”文件拷贝到项目应用级根目录下;
②配置HMS Core SDK的Maven仓地址
a) 在项目应用级根目录下打开 build.gradle 文件
b) 添加HUAWEI agcp插件以及Maven代码库。
-
在“allprojects > repositories”中配置HMS Core SDK的Maven仓地址。
-
在“buildscript > repositories”中配置HMS Core SDK的Maven仓地址。
-
在“buildscript > dependencies”中增加agcp配置。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
buildscript {
repositories {
google()
jcenter()
maven {url
'https://developer.huawei.com/repo/'
}
}
dependencies {
classpath
'com.huawei.agconnect:agcp:1.3.1.300'
}
}
allprojects {
repositories {
google()
jcenter()
maven {url
'https://developer.huawei.com/repo/'
}
}
}
|
③添加编译依赖
a) 打开应用级的“build.gradle”文件。
b) 在文件头apply plugin: 'com.android.application'下一行添加如下配置。
1
|
apply plugin:
'com.huawei.agconnect'
|
c) 在“dependencies”中添加如下编译依赖。
1
2
|
implementation
'com.huawei.hms:hianalytics:{version}'
implementation
'com.huawei.hms:dtm-api:{version}'
|
④ 同步工程
重新打开修改完的build.gradle文件,右上方出现“Sync Now”链接。点击“Sync Now”等待同步完成。
5. 如何配置混淆脚本?
编译APK前需要配置不要混淆HUAWEI Analytics Kit和DTM,避免功能异常。
① 打开安卓工程的混淆配置文件。Android Studio开发环境里的配置文件是“proguard-rules.pro”,Eclipse开发环境里的配置文件是“proguard-project.txt”。
② 加入排除Analytics Kit和DTM的混淆配置。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
-dontwarn com.huawei.hms.**
-keep interface com.huawei.hms.analytics.type.HAEventType{*;}
-keep interface com.huawei.hms.analytics.type.HAParamType{*;}
-keep class com.huawei.hms.analytics.HiAnalyticsTools{
public static void enableLog();
public static void enableLog(int);
}
-keep class com.huawei.hms.analytics.HiAnalyticsInstance{*;}
-keep class com.huawei.hms.analytics.HiAnalytics{*;}
-keep class com.huawei.hms.feature.** {
public *;
}
-keep public class com.huawei.hms.common.** {
public *;
}
-keep class com.huawei.hms.analytics.internal.filter.EventFilter{
public void logFilteredEvent(java.lang.String, android.os.Bundle);
public java.lang.String getUserProfile(java.lang.String);
}
-keep public class com.huawei.hms.dtm.EventFilter {
public <fields>;
public <methods>;
}
|
③如果开发者使用了AndResGuard,需要在混淆配置文件中加入AndResGuard允许清单。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
"R.string.hms*"
,
"R.string.connect_server_fail_prompt_toast"
,
"R.string.getting_message_fail_prompt_toast"
,
"R.string.no_available_network_prompt_toast"
,
"R.string.third_app_*"
,
"R.string.upsdk_*"
,
"R.layout.hms*"
,
"R.layout.upsdk_*"
,
"R.drawable.upsdk*"
,
"R.color.upsdk*"
,
"R.dimen.upsdk*"
,
"R.style.upsdk*"
,
"R.string.agc*"
|
6. 客户端开发
配置文件导入
创建目录src\main\assets\containers\,并将生成的配置文件:DTM-*******.json,添加到其中。如下图所示:
在开发过程中可以启动调试模式,实时查看事件的记录情况,观察具体结果并根据需要进行调整。
接入过程遇到问题可以上Stack Overflow提问,有华为研发专家一对一在线回答问题。快来和全球开发者一起交流吧!
https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Newest