文档管理中心
我的

此版本文档已归档不再维护,推荐您使用最新版本。

指南分析服务应用开发Android开发准备附录C:在Eclipse项目中集成HMS Core SDK

附录C:在Eclipse项目中集成HMS Core SDK

下载SDK

1.请下载HUAWEI Analytics Kit SDK及其依赖的SDK eclipse工程包,并解压压缩包。下载地址请参见:Eclipse SDK 下载。

2.请从官方网站自行下载HUAWEI Analytics Kit间接依赖的第三方开源jar包,具体如下表。

展开

第三方开源软件名称

版本号

说明

okhttp

3.11.0

HUAWEI Analytics Kit间接依赖的第三方开源jar包,必须集成。

okio

1.14.0

okhttp-3.11.0依赖的jar包,必须集成。

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

(1)选择“Android > Existing Android Code Into Workspace”,单击“Next”。

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

说明:

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

(2)analyticssdk-eclipse-{version}解压缩后的Datastore-annotation文件夹中提供的是jar包,不是SDK子工程,不需要导入。

(3)由于eclipse的xml文件不⽀持$符号,将HMSSdkBase、HMSSdkOpendevice和Agconnect-core这三个子工程下AndroidManifest.xml文件中的“${ApplicationId}”替换成您的应用包名。

4.添加依赖jar包。

(1)右键单击您的工程,选择“Build Path >  Configure Build Path”。

(2)在弹出窗口左侧选择“Java Build Path >   Libraries >   Add External JARs”。

(3)在弹出窗口依次添加:okhttp-3.11.0.jar和okio-1.14.0.jar,以及analyticssdk-eclipse-{version}解压缩后的Datastore-annotation文件夹中的datastore-annotation.jar。添加完三个jar包后单击“Apply”。

(4)单击“Order and Export”页,依次勾选datastore-annotation.jar、okhttp-3.11.0.jar和okio-1.14.0.jar,最后单击“Apply and Close”完成添加。

添加工程依赖关系

1.右键单击您的工程,选择“Properties”。

2.在左侧选择“Android”,单击“Add”,选择已导入空间的工程,单击“Apply and Close”。

3.右键点击HMSSdkAvailableUpdate工程,选择“Properties”。

4.在左侧选择“Android”,点击“Add”,选择HMSSdkUI工程,点击“Apply and Close”。

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

由于eclipse不能自动合并assets目录,请手动将子工程assets文件夹里的文件拷贝您的工程中assets目录下,需要拷贝的资源文件如下表所示。

展开

子工程

资源文件

Agconnect-credential

hmsrootcas.bks

HMSSdkStats

hianalytics_njjn, updatesdkcas.bks

HMSSdkAnalytics

hianalytics_njjn, hianalyticscas.bks

Network-grs

grs_sdk_server_config.json, grs_sp.bks

修改工程配置

1.配置工程project.properties文件:在您的工程目录中找到project.properties文件并打开,添加如下代码,用于合并子工程中的Manifest文件。

收起
自动换行
深色代码主题
复制
  1. manifestmerger.enabled=true
说明:
ADT必须是17以上版本。

2.工程打包合并时,Agconnect-core和Agconnect-credential子工程的AndroidManifest.xml中的service模块不能重复合并,需要手动删除Agconnect-core子工程AndroidManifest.xml文件中的如下代码。

收起
自动换行
深色代码主题
复制
  1. <service
  2.            android:name="com.huawei.agconnect.core.ServiceDiscovery"
  3.            android:exported="false" />

添加AppGallery Connect配置文件

1.登录AppGallery Connect 网站 ,选择“我的项目”。

2.单击需要配置的应用。

3.选择“项目设置 > 常规”区域配置文件。

4.由于eclipse不支持agcp插件,您需要将agconnect-services.json文件放置到您的工程assets目录下,并且在工程的Application子类中添加如下代码。如果工程没有Application子类,则需要您新建一个从Application继承的子类,例如新建MyApplication类。

收起
自动换行
深色代码主题
复制
  1. public class MyApplication extends Application{
  2.    @Override
  3.    public void onCreate() {
  4.        super.onCreate();
  5.    }
  6.    // TODO: Add the following code:
  7.    @Override
  8.    protected void attachBaseContext(Context context) {
  9.        super.attachBaseContext(context);
  10.        AGConnectServicesConfig config = AGConnectServicesConfig.fromContext(context);
  11.        config.overlayWith(new LazyInputStream(context) {
  12.            public InputStream get(Context context) {
  13.                try {
  14.                    return context.getAssets().open("agconnect-services.json");
  15.                } catch (IOException e) {
  16.                    return null;
  17.                }
  18.            }
  19.        });
  20.    }
  21.    // TODO: End
  22. }

添加代码后需要导入以下类:

收起
自动换行
深色代码主题
复制
  1. import java.io.IOException;
  2. import java.io.InputStream;
  3. import com.huawei.agconnect.config.AGConnectServicesConfig;
  4. import com.huawei.agconnect.config.LazyInputStream;
  5. import android.App.Application;
  6. import android.content.Context;
  7. import android.util.Log;

5.打开您的工程AndroidManifest.xml文件,在“Application”模块中添加Application子类名称,如果已经添加,则跳过此步骤。例如,添加MyApplication类名称。

收起
自动换行
深色代码主题
复制
  1. <application
  2.    android:name=".MyApplication"
  3.    …
  4.    >
  5. </application>

6.在eclipse菜单栏中单击“Project”,执行“Clean”操作,即完成SDK集成。

配置混淆脚本

编译APK前需要配置,不要混淆Analytics Kit,避免功能异常。Eclipse开发环境里的配置文件是“proguard-project.txt”。

1.打开Android工程的混淆配置文件。

2.加入排除Analytics Kit的混淆配置。

收起
自动换行
深色代码主题
复制
  1. -keep class com.hianalytics.android.**{*;}
  2. -keep class com.huawei.updatesdk.**{*;}
  3. -keep class com.huawei.hms.**{*;}
  4. -keep class com.huawei.agconnect.**{*;}
  5. -keep interface com.huawei.hms.analytics.type.**{*;}


本页面可能包含由第三方许可的内容,请参考具体描述。