【接入指南】一个Demo带你玩转华为帐号服务
在《接入指南:一文带你了解华为帐号服务》中已经给大家介绍了华为帐号服务有哪些优势,如一键授权登录华为全场景共享、共享华为帐号所有用户资源、帐号安全可靠、接入方便快捷等,以及为什么能帮助开发者提高获客量,文章最后还提供了Demo App的下载二维码让大家下载体验华为帐号的登录授权流程,Demo非常简单,集成了3个华为帐号服务SDK接口(总共4个),本文通过指导大家快速开发此Demo,让大家熟悉华为帐号服务。
如何你还没有下载Demo,请使用浏览器扫描如下二维码下载体验:

(注:Demo中会收集相关操作信息用于用户数量统计)
Demo开发准备
1、 安装Android Studio 3.5及以上版本;
2、 安装JDK 1.8 及以上;
3、 使用SDK Platform 19及以上;
4、 使用Gradle 4.6及以上;
5、 在华为开发者联盟注册成为华为开发者,如已注册,请跳过此步骤;
6、 将github上的demo源代码下载至本地;
Demo源码地址:https://github.com/HMS-Core/huawei-account-demo/tree/quickstart
运行环境配置(2min左右)
1、 使用Android Studio打开demo工程;
2、 在安卓插件市场下载HMS Toolkit插件并安装,版本5.2.0.300或以上;
如何安装插件也可参考:如何安装HMS Toolkit

3、 在工程中新创建自己的包名,例如com.hxb.account,把demo包com.huawei.hms.accountsample原有代码移动到新建包下;修改工程中涉及的Package Name和应用ID为自己新建的包名。(不能直接使用Demo中的包名,该包名已经被其他用户在华为应用市场注册过)
新建自己的包名(新建后注意把相应的Activity等类移到您定义的新包下),便于编译过程中查找相关文件:

修改AndroidManifest.xml文件中的package为com.hxb.account

修改build.gradle中的applicationId为com.hxb.account.

4、 打开HMS菜单下的Configuration Wizard进行环境配置检查,如果没有登录华为开发者帐号,Toolkit会引导先进行登录,登录后再点击Configuration Wizard。

弹出如下页面,页面中红×部分说明Toolkit检测到华为开发者联盟对应开发帐号下没有对应包名的应用。

点击Link可直接跳转至开发者联盟,进行相关应用的创建,这部分需要手动完成,步骤如下:
A、点击应用发布

B、点击添加项目

C、创建项目
D、点击添加应用

E、添加项目

应用创建完后,点击Configuration Wizard面板中的Retry,重新进行配置检查,检查成功:

7、 添加Account kit
点击Configuration Wizard面板中Add Kits,选择Account kit进行添加

添加完结果:

8、 选择证书,当前选择Android debug certificate 选项,点击Generate生成指纹证书,如下图

9、 点击Next,自动进行其他配置,包括在华为开发者联盟上开通Account Kit服务开关、配置应用的指纹证书、下载agconnect-services.json文件到工程目录下、混淆配置、在build.gradle文件插入接入Account SDK所需要的依赖、apk签名等操作,成功后会显示Success,如果中途检查出问题,可按照指引处理。

使用Toolkit远程真机进行打包测试
环境配置完后,调用Toolkit的Cloud Debugging进行打包测试

选择需要使用的机型:


选择对应设备,点击运行,即可进行App测试:

Demo核心代码详解
1、 界面设计
帐号的交互接口主要涉及登录、静默登录、退出帐号、取消授权,Demo中展示了登录、静默登录、取消授权三个接口的使用。

其中“华为帐号登录”图标使用的是已经封装好的标准控件,实际使用时请按照华为帐号登录图标使用规范使用华为图标:
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201524776948490132?fid=18
原作者:胡椒
【接入指南】一个Demo带你玩转华为帐号服务的更多相关文章
- 一个Demo带你彻底掌握View的滑动冲突
本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 近期在又一次学习Android自己定义View这一块的内容.遇到了平时开发中常常碰到的一个棘手问题:View的滑 ...
- iOS支付 IPAPayment demo iTunes Conection里面添加测试帐号,添加商品,实现购买过程
https://github.com/ccguo/IAPPaymentDemo 发一个demo
- 一个winform带你玩转rabbitMQ
源码已放出 https://github.com/dubing/MaoyaRabbit 本章分3部分 一.安装部署初探 二.进阶 三.api相关 安装 部署 初探 先上图 一. 安装部署 下载 rab ...
- 由浅入深一个Demo带你认识Restful风格的架构
java作为一门后端语言,其厉害之处在于web,大家比较熟知的各种网络应用,java都能做,那么在这个移动优先的时代,如何继续发挥java的强大之处呢? 通常是让java作为一个app的服务端,为ap ...
- 玩转华为物联网IoTDA服务系列三-自动售货机销售分析场景示例
场景简介 通过收集自动售货机系统的销售数据,EI数据分析售货销量状况. 该场景主要描述的是设备可以通过MQTT协议与物联网平台进行交互,应用侧可以到物联网平台订阅设备侧变化的通知,用户可以在控制台或通 ...
- 转: 带你玩转Visual Studio——带你理解多字节编码与Unicode码
上一篇文章带你玩转Visual Studio——带你跳出坑爹的Runtime Library坑帮我们理解了Windows中的各种类型C/C++运行时库及它的来龙去脉,这是C++开发中特别容易误入歧途的 ...
- 微信公众号开发C#系列-2、微信公众平台接入指南
概述 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流程是这样的,用户发送消息到微信服务器,微信服务器将接收到的消息post到用户接入时填写的url中,在url处理程序中,首先 ...
- 带你玩转Visual Studio——带你理解多字节编码与Unicode码
目录(?)[-] 多字节字符与宽字节字符 char与wchar_t string与wstring string 与 wstring的相关转换 字符集Charcater Set与字符编码Encoding ...
- Mars Android 接入指南
Mars Android 接入指南 https://github.com/Tencent/mars/wiki/Mars-Android-%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8 ...
随机推荐
- HTTP/3 protocol
HTTP/3 protocol https://caniuse.com/#feat=http3 HTTP/3 H3 https://en.wikipedia.org/wiki/HTTP/3 QUIC ...
- NGK推出SPC算力币,开启算力新玩法!
这两天,NGK公链再度上了热搜.因为既成功的打造DeFi生态以后,NGK又将目光对准了算力市场.试图通过算力代币化,让NGK算力持有者可以获得算力代币,同时,如果不想要了,算力持有者也可以抛售代币. ...
- HTTP 1.x 学习笔记 —— Web 性能权威指南
HTTP 1.0的优化策略非常简单,就一句话:升级到HTTP 1.1.完了! 改进HTTP的性能是HTTP 1.1工作组的一个重要目标,后来这个版本也引入了大量增强性能的重要特性,其中一些大家比较熟知 ...
- CDN失效时使用本地js文件:window.jQuery || document.write
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></ ...
- 数组的常用方法之split
今天我们来聊一下数组的常用方法:split 返回值:一个新数组. 1.该方法可以直接调用不传任何值,则会直接将字符串转化成数组. var str = 'I love Javascript'; cons ...
- 你不知道的Scheduled定时任务骚操作
目录 一.什么是定时任务 二.项目依赖 三.注解式定时任务 3.1 cron 3.2 fixedDelay 3.3 fixedDelayString 3.4 fixedRate 3.5 fixedRa ...
- SQL学习笔记——创建数据库显示:文件激活错误,物理文件名不存在>>解决方案
今天在创建数据库时,跟着老师一步一步的操作创建成功,但出于在厌恶冗长的数据库存储路径,于是,擅自更改了数据filename,让他保存在电脑桌面新建的文件夹,可是一执行就报错了. 老师源码: 1 cre ...
- rabbitmq如何保证消息可靠性不丢失
目录 生产者丢失消息 代码模拟 事务 confirm模式确实 数据退回监听 MQ事务相关软文推荐 MQ丢失信息 消费者丢失信息 之前我们简单介绍了rabbitmq的功能.他的作用就是方便我们的消息解耦 ...
- HDOJ-6656(数论+逆元)
Kejin Player HDOJ-6656 设f[i]为从i升级到i+1期望需要的金钱,由于每级都是能倒退或者升级到i+1,所以询问从l,r的期望金钱可以直接前缀和,那么推导每一级升级需要的期望钱也 ...
- postman接口测试之设置全局变量和设置环境变量和全局变量
一.概念 1.环境变量 就是接口的域名或IP地址. 2.全局变量 就是一个作用域为整个postman的变量. 二.使用场景 1.环境变量 在测试的过程中,经常会频繁切换环境,本地环境验证.发布到测试环 ...