华为帐号服务学习笔记(三):10 分钟完成 Authorization Code 模式客户端 Demo 开发
Demo 开发准备
1、 安装 Android Studio 3.5 及以上版本;
2、 安装 JDK 1.8 及以上;
3、 使用 Android SDK Platform 19 及以上;
4、 使用 Gradle 4.6 及以上;
5、 在华为开发者联盟注册成为华为开发者,如已注册,请跳过此步骤;
运行环境配置
之前按照华为帐号的官方指导试过 demo 开发,发现前期接入华为开发者联盟的各种步骤有点繁琐,各种界面来回切换,后来在 Android Studio 上发现 HMS 提供了一个 IDE 插件,可以帮忙快速集成。本次文章主要就介绍通过这个 IDE 插件来快速创建一个华为帐号 demo。
如果想自己手动按照步骤创建帐号的 demo,可以直接查看这个官方指导:
https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/dev-process-0000001050443773
IDE 插件安装
这个工具叫 HMS Toolkit,后来发现华为官方也有介绍,大家有兴趣的可以去它们主页了解下:https://developer.huawei.com/consumer/cn/huawei-toolkit/
安装插件,直接在 Android Studio 里面,点击“File > Settings > Plugins” ,搜索“HMS”找到 HMS Toolkit 就可以了,点击安装然后重启 Android Studio。
创建 android 项目
在开发应用前,你得本地有一个 Android 项目,已有 Android 项目的可忽略。
步骤 1 打开 Android Studio 软件,点击“File > New > New Project” ,按自己需求选择,我这里选择的“Empty Activity”,点击“Next”。
步骤 2 在“Configure Your Project”界面填入项目名称、包名、项目存储位置、项目语言以及最低 SDK 版本,然后点击“Finish”完成项目创建。
配置 AppGallery Connect
为了接入华为,我们还需要在 AppGallery Connect 中创建应用,并做些基本设置。
步骤 1 使用华为帐号登录AppGallery Connect(https://developer.huawei.com/consumer/cn/service/josp/agc/index.html)。要是没注册,直接按照页面指导完成帐号注册就行,然后选择“我的项目”。
步骤 2 在我的项目页面点击“添加项目”。
步骤 3 输入个名字作为项目名称,点击“确定”。
步骤 4 项目创建成功后会自动进入“项目设置”页面,在这里找到“添加应用”并点击。
如果你本来就有项目并且已经有应用了,直接展开页面顶部的应用选择区域,选择“添加应用”。
步骤 5 在“添加应用”页面中填写应用信息,特别注意平台和包名的,尤其是包名要和前面创建的 android 项目的包名一致。
l 选择平台:选择“Android”。
l 应用包名:需要与您正在开发的应用的包名保持一致。
配置完成后,后面的一些操作都可以忽略了,直接去 Android Studio 操作就行,安装的 IDE 插件可以帮忙进行设置。
在 Android Studio 上为项目配置华为 AGC 和华为帐号
步骤 1 在 Android Studio 中,菜单栏选择“HMS > Configuration Wizard”。如果你没登录 AppGallery Connect,这个工具会帮忙自动打开浏览器并提示登录。
步骤 2 登录后,在 Configuration Wizard 界面可以选择团队名称、对应的工程模块、Integrated Kits(选择 Account Kit)和证书类型,点击“Generate”生成 SHA256 证书指纹,然后点击“Next”。
选择团队名称和对应的工程模块之后,Toolkit 会自动检测 AGC 上是否有对应的应用。若有报错,根据界面点击“Link”到 AGC 上检查是否已创建应用。如果没有,就创建个新的应用(这个就是前面“配置 AppGallery Connect”那步),然后点击“Retry”。
关于证书类型说明如下:
l Use your certificate:直接使用你自己创建的证书生成 SHA256 证书指纹,这种是用来应用发布的时候。关于证书的指导可参见Android证书签名(https://developer.android.com/studio/publish/app-signing#generate-key)。
l Use Android debug certificate:选择 Android 自带的调试证书生成 SHA256 证书指纹,这种方式仅用于应用调试场景。我们这就是个 Demo,为了简单我直接选的这个。
点击“Generate”可自动生成证书指纹,如果生成失败,检查证书信息是否正确,确保证书信息和指纹相匹配,或者根据生成证书指纹指导手工生成指纹,然后填写到指纹信息框内。
插件会自动对 Account Kit 的使用环境进行环境配置检查,我暂时还没遇到过失败的情况。全部检查项通过后直接点击“Go to coding assistant”按钮,就可以进入 Account Kit 的页面去选择调用的接口了。
通过 Coding Assistant 集成 Authorization Code 模式登录帐号
步骤 1 在 Android Studio 中,选择“HMS > Coding Assistant”,然后在 Kit 列表中点击“Account Kit”。
步骤 2 鼠标放到“Signing In With an ID(Authorization Code)”这个行上,拖拽下,把这行拖放到代码区域。
鼠标释放后,会弹出新增代码片段的选择框,直接点击“OK”,可以看到会生成 Authorization Code 登录的相关 Activity 文件和 xml 布局文件,并且 AndroidManifest.xml、工程 build.gradle 和模块 build.gradle 都有一些新增信息。具体文件有哪些变化看后面的登录详解。
步骤 3 打开“AndroiManifest.xml”文件,将应用初始调用的 Activity 替换成步骤 2 生成的 Activity,这样我们的 APP 就可以主动调用新加的 Activity 了。
这样,一个帐号登录的 Demo 就完成了。
Demo 的运行调试,可以在自己的设备或远程真机里运行查看。
编译、调试
使用远程真机运行
步骤 1 在 Android Studio 的菜单栏中选择“HMS > Cloud Debugging”或者在工具栏点击如下图标。
步骤 2 远程真机界面,可以根据分辨率、Android 版本那些来筛选要远程调试的真机。
这里有个坑,深圳地域的真机不知道什么原因,是不能进入“设置”的,这导致帐号的 Demo 跑起来后无法拉起登录页面。强烈建议使用非深圳地域的真机进行测试。
步骤 3 在菜单栏中点击(Run 按钮)或(Debug 按钮),在远程真机中运行或调试 App。
步骤 4 进入运行的项目,点击“AUTHORIZATIONCODE MODE SIGNIN”按钮,拉起华为帐号登录页面,这个页面就是通过 Authorization Code 方式登录的华为帐号。
使用本地真机运行
在菜单栏中点击(Run 按钮)或(Debug 按钮),在本地真机中运行或调试 App。
真机运行结果示意如下:
后续笔者会不断输出相关领域的优质内容,希望大家持续关注本帐号!
评论