文档管理中心

在Eclipse项目中集成HMS Core SDK

针对Eclipse开发环境,华为提供了下载HMS Core SDK包本地集成的方式。在开始开发前,您需要将HMS Core SDK集成到您的Eclipse开发环境中。

下载SDK

说明

若使用Eclipse集成DTM SDK,不支持上报数据到Firebase和Adjust平台。

  1. 在集成DTM SDK前,请先确认已经完成Analytics SDK的集成。关于如何集成Analytics SDK请参见在Eclipse项目中集成HMS Core SDK
  2. 下载HMS Base SDK和要集成的服务SDK,并解压zip包。

    下载地址请参见:Eclipse SDK下载

  3. 选择菜单“File > Import”,将所有SDK工程导入到您的工作空间。

    1. 选择“Android > Existing Android Code Into Workspace”,点击“Next”。

    2. 点击“Browse”,选择工程所在的文件夹目录。在“Projects”下显示待导入的工程,默认全部勾选,点击“Finish”。

    说明

    待导入的工程必须和工作空间在相同的磁盘空间里,例如都在“D:\”。如果不在,您可以选择“Copy projects into workspace”,将工程文件复制到工作空间。

添加工程依赖关系

  1. 右键点击您的工程,选择“Properties”。
  2. 在左侧选择“Android”,点击“Add”,选择已导入空间的工程,点击“Apply and Close”。

  3. 由于Eclipse的xml文件不支持$符号,将dtm-api工程下AndroidManifest.xml文件中的“${applicationId}”替换成您的应用包名。应用包名有特殊字符限制,请参见FAQ

拷贝DTM SDK资源文件到您的工程目录

将dtm-core工程中assets目录下的资源文件拷贝到您的工程中assets目录下。

说明

如果依赖其他的Kit资源,还需要复制对应Kit的资源文件到您的工程目录下。

配置混淆脚本

说明

若工程配置满足以下所有条件,则无需配置混淆脚本。

  1. 项目中集成的DTM SDK版本号{version}不低于5.0.4.300。
  2. 工程目录下“build.gradle”文件中Android Studio的gradle插件版本不低于3.4.0,如:classpath 'com.android.tools.build:gradle:3.4.0'
  3. Gradle plugin 5.0以下版本,未主动禁用R8代码混淆或在工程目录下“gradle.properties”文件中配置:android.enableR8=true。Gradle plugin 5.0及以上版本,可以忽略该配置。

编译APK前,您需要配置混淆配置文件,避免混淆Analytics Kit和DTM而导致功能异常。

在应用级根目录下打开混淆配置文件“proguard-project.txt”,加入排除Analytics Kit和DTM的混淆配置。
-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>;
}
搜索
请输入您想要搜索的关键词