目录

1. AppGallery Connect 配置

在开始开发应用前,需要在AppGallery Connect中配置相关信息。

1.1 注册成为开发者

在开发应用前需要在华为开发者联盟上注册成为开发者并完成实名认证,具体方法可参考帐号注册认证。

1.2 创建应用

参见创建项目和在项目中添加应用完成应用的创建,游戏应用的特殊配置如下:

● “软件包类型”:选择“APK(Android应用)”。

● “支持设备”:选择“手机”。

● “应用分类”:选择“应用”或“游戏”。

1.3 生成签名证书指纹

签名证书指纹用于在通过华为HMS SDK调用HMS Core(APK)时,校验应用的真实性。开发者在使用HMS Core(APK)前必须将签名证书指纹配置到AppGallery Connect中,在配置前需要根据签名证书在本地生成签名证书指纹。 在申请前需要满足以下2个条件:

● 已创建应用程序的签名文件,签名证书创建属于通用技术,此处不详细描述。

● 当前开发的PC已经安装JDK。

操作步骤如下:

1. 打开命令行工具(使用CMD命令),执行cd命令进入keytool.exe所在的目录(图中样例为PC上java程序安装在C盘的Program Files (x86)目录)。

2. 执行命令keytool -list -v –keystore <keystore-file> ,按命令行提示进行操作。<keystore-file>为应用签名文件的完整路径。

例如:

C:\Program Files (x86)\Java\jdk1.7.0_25\bin>keytool -list -v -keystoreE:\HMS_SDK_2.5.1.300\Sample\HMSSdkSample_2.5.1.300_AS\HmsSample\android.keystore.jks

3. 根据结果获取对应的SHA256指纹。

1.4 配置签名证书指纹

1、登录AppGallery Connect网站,选择“我的应用”。

2、点击需要配置的应用。

3、选择“开发”页签,在“项目设置”页面的“应用”区域,将“SHA256证书指纹”配置为生成签名证书指纹中生成的SHA256指纹。

4.配置完成后点击√。

1.5 打开相关服务

需要使用FIDO的功能,需要打开FIDO的服务。具体操作步骤请参见开通服务。

2. 集成 HMS SDK

针对AndroidStudio开发环境,华为提供了maven仓集成方式的HMS SDK包。在开始开发前,您需要将HMS SDK集成到您的AndroidStudio开发环境中。

1、在AndroidStudio开发环境中添加当前应用的AppGallery Connect配置文件。

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

b. 在项目列表中找到您的项目,在项目中点击需要集成HMS SDK的应用。

c. 在“项目设置”页面中,单击“应用”栏下的“agconnect-services.json”下载配置文件。

d. 将“agconnect-services.json”文件拷贝到应用级根目录下。

2.配置HMS SDK的maven仓地址。

a.打开AndroidStudio项目级build.gradle文件。

b. 在allprojects ->repositories 里面配置HMS SDK的maven仓地址。

  1. allprojects {
  2. repositories {
  3. google()
  4. jcenter()
  5. maven {url'https://developer.huawei.com/repo/'}
  6. }
  7. }
说明:
maven仓地址直接在浏览器中打开无法访问,只能在IDE中配置。

c. 在buildscript->repositories中配置HMS SDK的maven仓地址。

  1. buildscript {
  2. repositories {
  3. google()
  4. jcenter()
  5. maven {url 'https://developer.huawei.com/repo/'}
  6. }
  7. }

d. 在buildscript->dependencies中配置AppGallery Connect插件地址。

  1. buildscript {
  2. dependencies {
  3. classpath 'com.android.tools.build:gradle:3.3.0'
  4. classpath 'com.huawei.agconnect:agcp:1.2.0.300'
  5. }
  6. }

3. 添加编译依赖和AppGallery Connect插件地址。

a.打开应用级的build.gradle文件。

b.在文件头添加AppGallery Connect插件依赖。

  1. apply plugin: 'com.huawei.agconnect'

c.在“dependencies”中添加如下编译依赖。(BioAuthn-AndroidX和BioAuthn不能同时添加)

(1). FIDO2

  1. dependencies {
  2. implementation 'com.huawei.hms:fido-fido2:4.0.3.300'
  3. }

(2). Bioauthn-AndroidX

  1. dependencies {
  2. implementation 'com.huawei.hms:fido-bioauthn-androidx:4.0.3.300'
  3. }

(3). Bioauthn

  1. dependencies {
  2. implementation 'com.huawei.hms:fido-bioauthn:4.0.3.300'
  3. }

4.重新打开修改完的build.gradle文件,右上方出现“Sync Now”链接。点击“Sync Now”等待同步完成。

说明:
如果出现错误,请检查网络连接是否正常,以及检查gradle文件是否正确。

5.多语言设置。

打开项目工程下app目录的build.gradle文件。

在“android”->“defaultConfig”中新增resConfigs配置,“en”(英语) 和 “zh-rCN”(简体中文)为必须配置的语种,配置格式如下:

  1. android {
  2. defaultConfig {
  3. ...
  4. resConfigs "en","zh-rCN","需要支持的其他语言"
  5. }
  6. }

HMS SDK支持的语言列表请参考HMS SDK支持的语言。

3. 配置混淆脚本

开发者编译APK前需要配置不要混淆HMS SDK,避免功能异常。

  1. 打开工程的混淆配置文件proguard-rules.pro。


  2. 加入排除HMS SDK的混淆配置。

  1. -ignorewarnings
  2. -keepattributes *Annotation*
  3. -keepattributes Exceptions
  4. -keepattributes InnerClasses
  5. -keepattributes Signature
  6. -keepattributes SourceFile,LineNumberTable
  7. -keep class com.hianalytics.android.**{*;}
  8. -keep class com.huawei.updatesdk.**{*;}
  9. -keep class com.huawei.hms.**{*;}  

    3. 如果开发者使用了AndResGuard,需要在混淆配置文件中加入AndResGuard白名单。

  1. "R.string.hms*",
  2. "R.string.agc*",
  3. "R.string.connect_server_fail_prompt_toast",
  4. "R.string.getting_message_fail_prompt_toast",
  5. "R.string.no_available_network_prompt_toast",
  6. "R.string.third_app_*",
  7. "R.string.upsdk_*",
  8. "R.layout.hms*",
  9. "R.layout.upsdk_*",
  10. "R.drawable.upsdk*",
  11. "R.color.upsdk*",
  12. "R.dimen.upsdk*",
  13. "R.style.upsdk"