【端云一体化众测】“码”上有礼!HarmonyOS鸿蒙Next智能景区卡片元服务2
【端云一体化众测】“码”上有礼!HarmonyOS鸿蒙Next智能景区卡片元服务2 基于上一次的#端云一体化#SHOW出您的元服务# 智能景区卡片元服务基础上,不断完善app和元服务卡片的功能,结合Serverless认证服务功能和云数据库,实现了登录认证服务功能以及app和卡片对云数据库的增删改查的功能。
效果图如下:
智能景区主界面分了4个页面,导览页面,票务页面,地图页面,我的旅游历史轨迹页面,每个页面对应一个元服务卡片,每个元服务卡片又对应一个ability。这次设计了票务数据表Bookings和旅游景点表Attractions,需要开通Serverless云数据库,两张表的数据结构如下:
Bookings表用于保存用户购买了景点票的信息,例如订票入场日期,票务类型(包含成人票和小孩票),总价钱,订票人的名字。
Attractions表用于保存一些用户旅游景点的历史记录,例如景点的名字和景点的描述内容。
登录界面就必须在AppGallery开通了Serverless的认证服务才能收到手机短信通知,暂时只支持手机短信认证登录,如下图所示:
在开发过程中调用云数据库时需要注意的是:& 添加了所需依赖后可能还会报下面的错误,这是因为两个包用了同一个依赖文件,需要在build-profile文件里的buildOption改一下同一依赖文件时就覆盖。
进入主界面后,点击票务页面,这里分类了成人票和小孩票的,分别点击对应的按键,会跳转并传递两个参数票务类型和单价到票务详情页面。
在票务详情页面,用户填写完订票信息后,点解快捷支付就会触发插入订票数据到云数据库,BookingPage.ets代码如下:
点击快捷支付后,就会调用插入云数据库的方法,我把调用云数据库的方法都封装在AGCDBServices.ts文件里,代码如下:
具体怎么配置和使用云数据库,可以参考云数据库开发指南:云数据库开发指南
在我的旅游历史记录页面对应的卡片元服务里,点击卡片刷新按钮,可以随机查询一下景点的名字和景点描述,这都用户的旅游景点记录,如图所示:
因为点击卡片调用查询数据库方法并返回数据显示在卡片上,异步方法可能超过5s, 所以只能使用卡片的call机制方式去实现,具体讲解卡片3种Router机制、call机制与message机制的不同,请参考文章:卡片机制详解
用户卡片代码和对应ability的代码如下:
总结:
通过这次进一步完善智能景区云服务卡片开发, 学习了如何Serverless的用户认证登录, 实现了app页面和卡片对云数据库的增删改查的功能,下次就继续完善地图景点以及景点入场提醒功能。
更多关于【端云一体化众测】“码”上有礼!HarmonyOS鸿蒙Next智能景区卡片元服务2的实战教程也可以访问 https://www.itying.com/category-93-b0.html