官方出品!手把手教你在华为HMS平台开发App
HMS Core是华为面向开发者提供的开放能力合集,包括账号、支付、Push、地图等核心能力。华为通过HMS Core全面开放“芯-端-云”的能力,帮助开发者实现高效开发、快速增长、商业变现,使能开发者创新,助力开发者高效构建精品的应用。
HMS Core从开发、增长和盈利三个环节为开发者提供支持。
- 开发环节,提供账号、定位、机器学习等基础能力,帮助开发者快速构建高质量的移动应用;
- 增长环节,提供Push、分析等能力,协助开发者精细化运营;
- 盈利环节,提供应用内支付、广告等能力,助力开发者实现商业变现。
图2-1展示了HMS Core开放能力框架。
▲图2-1 HMS Core视图
HMS Core不断开放出新的能力,建议读者从开发者联盟官网选择需要的各类开放能力。下面通过实例来了解框架中的一些常用开放能力。
01 开发:低成本快速构建优质应用
本节介绍在App开发阶段常用的一些HMS开放能力,帮助开发者了解如何快速低成本地构建App,打造一款高质量的产品。
1. Account Kit
当用户开始体验一个移动App时,往往会因为烦琐的注册流程而中途退出,但通过了解用户的身份进而为其提供个性化体验,对于App而言又是十分必要的。如何平衡用户体验与获取用户之间的这种矛盾?Account Kit(华为账号服务)能帮你解决这个问题,其应用场景如图2-2所示。
Account Kit在遵循OAuth 2.0(Open Authorization,开放式授权)和OpenID Connect(OIDC)等国际标准协议的基础上,为用户提供了简单、安全的登录授权功能,用户只需一键点击授权,就能通过华为账号快速登录应用,避免了烦琐的注册登录操作。
- 当用户重启应用时,华为账号默认是自动登录的状态,无须再次授权,这能帮开发者大大降低应用注册和登录环节的用户流失率。
- 在账号安全方面,Account Kit采用双因素身份验证的方式,对数据进行全流程加密,保障了全球范围内账号登录安全和隐私合规。
- Account Kit拥有覆盖全球的海量活跃用户,帮助开发者充分利用华为全场景生态平台的优势,在手机、平板、大屏、车机等各种华为终端设备上进行应用登录。
▲图2-2 Account Kit应用场景
2. FIDO
有了账号后,很多App在登录或者遇到支付场景时,往往需要进行身份验证,以确保账户或资金的安全。传统方式是通过输入密码来进行身份验证,但是使用密码存在一定的安全风险,并且对于不少用户来说,要牢牢记住密码也是一件困难的事情。
那么,有没有一种既安全又便捷的身份验证方式呢?华为FIDO服务可以解决这个问题。
FIDO为开发者提供了两个主要特性:线上快速身份验证(FIDO2)和本地生物特征认证(BioAuthn),可以支撑“在线用户身份验证”和“本地身份验证”两类场景(见图2-3)。
▲图2-3 FIDO应用场景
3. Map、Site和Location
在电商、快递物流、旅游和社交等场景中,地图服务、位置服务和定位服务是App不可缺少的功能。如电商App,通过定位和地图,用户可快速定位位置、添加地址信息。对于旅游类App,搜索地点,了解详情,寻找周边的酒店、美食等是用户常用的功能。
华为Map Kit(地图服务)、Site Kit(位置服务)和Location Kit(定位服务)为这些App提供了基础软件能力。Map Kit和Site Kit都是基于地图的数据为开发者提供服务。
- Map Kit提供地图呈现、地图绘制、地图交互、自定义地图样式和路径规划。
- Site Kit提供丰富的地点数据,通过周边搜索、关键字搜索、地点详情查询和地理编码等查询能力帮助用户探索世界。
- Location Kit采用GPS、Wi-Fi、基站等多途径的混合定位模式进行定位,精准地获取用户位置信息,提供融合定位、活动识别和地理围栏等功能。
以3个场景来举例说明上述Kit的组合使用(见图2-4)。
- 场景1:基于Location的定位数据,结合Site Kit能力可以进行附近地址的搜索。
- 场景2:基于Location的定位数据,结合Map Kit能力可以进行路径规划。
- 场景3:基于Site Kit的PoI(Point of Information,关注点)数据,结合Map Kit能力进行地图的绘制。
▲图2-4 Map、Site和Location应用场景
除了这几个场景外,开发者可以基于实际的业务需要来对这些能力进行个性化的组合使用,全面提升应用的服务体验。
4. Safety Detect
今天,用户不仅关注App的功能体验,还关注App的使用安全。App所运行的设备是否安全,App是否会感染病毒,App是否会被攻击而泄露隐私,这些关注点已变成开发者必须考虑的因素。
如何才能做好安全防护,保护用户的数据安全呢?
Safety Detect覆盖多维度安全检测开放服务,包括系统完整性检测、应用安全检测、恶意URL检测和虚假用户检测,助力快速构建应用安全,保护用户数据安全。图2-5所示为Safety Detect应用场景。
▲图2-5 Safety Detect应用场景
02 增长:持续提升用户量和活跃度
通常开发者在运营一款App时,需要通过实时消息推送来保持与用户的黏性,进而提升用户的留存率和活跃度,持续做大用户流量。而实际情况下,针对海量用户群体的消息触达,往往面临两个比较突出的问题:
一是如何在较短的时间内触达海量目标用户,实现“推得到”“推得快”和“推得准”;
二是如何根据用户的标签、分组等维度向特定的人群进行消息推送,并准确获得用户使用效果反馈。
针对以上问题,让我们来看下华为Push服务是如何解决的。
- 依托华为全球化的数据中心部署,华为Push服务覆盖多达200多个国家和地区,推送容量单日百亿级,推送速度达千万级/秒。
- 基于华为终端EMUI提供系统级的消息通道,即使在应用未启动的情况下,消息也可以正常接收并在设备上显示。同时,设备会以实时消息回执的方式来反馈发送状态,实现了对消息发送状态的全掌握。
- 华为Push服务支持按标签、主题、情景智能、地理围栏等方式对特定的受众发送消息,并支持多维度的数据统计分析。图2-6所示为华为Push服务推送的文本消息和图文消息。
▲图2-6 文本消息和图文消息
03 盈利:利用多渠道实现开发者变现
开发者开发一款App所追求的商业目标是盈利,通常需要通过广告或付费模式进行变现。在付费模式下,App需要提供购买支付能力,对接支付系统。
而实际情况下,开发者面临很多支付通道选择,包括支付宝、微信、银联和运营商支付等。与多个支付系统实现对接,存在开发成本高、对接联调的时间周期很长的问题。华为支付可以帮你简化这些工作。
1)华为IAP(In App Purchase)覆盖全球主流支付方式,聚合多条支付通道,提供全球化的支付服务。主要支付方式包括银行卡支付、DCB(Direct Carrier Billing)、花币支付和第三方支付(见图2-7)。
其中,银行卡支付覆盖170多个国家,DCB支付覆盖超过47家运营商,花币支付覆盖全球70多个国家,第三方支付支持微信、支付宝、Sofort和iDeal等支付方式。
▲图2-7 全球主流支付方式
2)IAP提供多种支付配套能力(见图2-8),包括商品管理、订单管理和订阅管理。商品管理支持超过62种语言、195个商品价格档位,支持170多个国家的本地货币自动定价,可根据国家或区域来调整定价策略。
订单管理提供了丰富的订单管理开放接口,能够记录完整的订单信息,主动查询异常订单并及时补发,实现“零掉单”。订阅服务提供多样化的订阅策略,包括促销折扣、免费试用和延迟结算,支持订阅周期可配置。
▲图2-8 支付配套能力
关于作者:王希海,华为终端云服务开发者联盟产品部部长,具有15年以上丰富的软件领域从业经验,华为终端HDD、HSD、HDG、HDE等生态项目创始人,消费者云服务DigiX系列赛首席评委,曾获深圳市科技进步奖。目前专注华为终端HMS开放能力的推广与布道,与全球开发者共同打造全场景智慧化终端生态。
望岳,华为终端云服务HMS Core平台部部长,快应用联盟的发起和倡导者之一,20余年电信领域大型管理软件、分布式中间件与平台的研发和全球交付经验。曾发表多篇电信领域专利文章并取得国际专利。目前专注于华为终端HMS Core开放能力构建,助力全球开发者的商业成功。
吴海亮,华为终端云服务开发者联盟首席技术专家,华为HDD和HMS开放能力首席课程讲师,10余年软件开发与架构设计经验,曾主导多个开放能力的开发项目。目前致力于HMS开放能力推广与全球开发者技术支持工作,亦作为布道师活跃于全球HMS生态发展项目。