鸿蒙HarmonyOS实战开发:应用“扫码直达”服务规范
鸿蒙NEXT开发实战往期必看文章:一分钟相识”纯血版!鸿蒙HarmonyOS Next应用开发!
“非常详细的” 鸿蒙HarmonyOS Next应用开发学习蹊径!(从零基础入门到精通)
HarmonyOS NEXT应用开发案例实践总联合(持续更新......)
HarmonyOS NEXT应用开发性能优化实践总结(持续更新......)
在日常生活中,人们会利用各种应用扫各式各样的码,而“扫码直达”服务则为用户带来一种全新的扫码体验。
开发者将域名注册到“扫码直达”服务后,用户可通过控制中心等体系级的常驻入口,扫应用的二维码、条形码并跳转到应用对应服务页,实现一步直达服务的体验。
开发者接入“扫码直达”服务,能为应用带来:
[*]更浅层的扫码入口和更便捷的“扫码直达”服务体验。
[*]HarmonyOS强大的扫码本领。
[*]更轻易触达用户的全新渠道。
业务流程
https://i-blog.csdnimg.cn/img_convert/b344c85a2f2b09239ddaade1e93f0e9f.png
[*]开发者参考App Linking指导完成域名注册。
[*]用户通过HarmonyOS扫码入口发起扫码请求。
[*]HarmonyOS扫码入口调用体系本领解析码值,查询码值对应的应用信息后拉起应用;
[*]解析码值结果跳转应用服务页。
开发步调
[*]参考开发预备完成须要的预备工作。
[*]处理吸收到的码值,完成应用内页面跳转逻辑。 import { router } from '@kit.ArkUI';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
export default class EntryAbility extends UIAbility {
// 冷启动场景通过onCreate回调获取码值信息
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
hilog.info(0x0001, '', `Succeeded in getting want in onCreate`);
// 从want中获取传入的链接信息。
// 如传入的url为:https://www.example.com/programs?router=Access
this.getRouterUri(want);
}
// 热启动场景通过onNewWant回调获取码值信息
onNewWant(want: Want, launchParam: AbilityConstant.LaunchParam): void {
hilog.info(0x0001, '', `Succeeded in getting want in onNewWant`);
// 从want中获取传入的链接信息
this.getRouterUri(want);
}
// 解析扫码结果,跳转相应页面
private getRouterUri(want: Want) {
let uri: string | undefined = want?.uri;
if (uri) {
// 开发者根据解析的uri跳转至响应页面,例如需要跳转页面为"pages/Access"
let status: router.RouterState = router.getState();
if (status && status.name !== 'Access' && uri) {
// 根据uri参数做业务处理
router.pushUrl({
url: 'pages/Access'
});
}
}
}
}
[*]验证“扫码直达”服务。
[*]将配置好域名映射关系的测试应用安装到本地。
[*]打开HarmonyOS扫码入口(控制中心扫码入口),扫描应用发行的二维码。
[*]确认能否拉起应用并跳转目标服务页。
[*]集成效果,以美团单车场景为例:
https://i-blog.csdnimg.cn/direct/fec1e90b362a4353a5465f8a5ebfd33d.png
https://i-blog.csdnimg.cn/direct/ba7d889920f34dc88b9611853b5806d2.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]