HarmonyOS服務(wù)卡片-防疫一碼通
想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):
51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)
開(kāi)發(fā)背景
“嚴(yán)”字當(dāng)頭共防新冠,面對(duì)德?tīng)査儺惗局甑臍鈩?shì)洶洶,疫情防控不能有一絲松懈。軟通動(dòng)力全體員工堅(jiān)決貫徹國(guó)家衛(wèi)生健康委對(duì)于防疫的要求,做好個(gè)人防護(hù);風(fēng)險(xiǎn)人群要主動(dòng)檢測(cè)、自覺(jué)報(bào)告,主動(dòng)承擔(dān)起疫情防控的社會(huì)責(zé)任。
由于軟通動(dòng)力員工基數(shù)大,在進(jìn)入辦公場(chǎng)所、乘坐接泊車以及乘坐地鐵進(jìn)入商場(chǎng)時(shí)掃碼測(cè)溫的過(guò)程中難免排起長(zhǎng)隊(duì),在排隊(duì)過(guò)程中人員密集,對(duì)于疫情防控工作有著極大的不利影響。因此,軟通動(dòng)力通過(guò)使用HarmonyOS原子化卡片服務(wù)原理,將行程碼轉(zhuǎn)化為卡片服務(wù),提高了掃碼效率。
效果展示:

一、創(chuàng)建“一碼通”服務(wù)卡片工程
1、安裝和配置DevEco Studio 2.1 Release
安裝的鏈接:https://developer.harmonyos.com/cn/develop/deveco-studio
IDE的使用指南,很詳細(xì):https://developer.harmonyos.com/cn/docs/documentation/doc-guides/tools_overview-0000001053582387
我的本案例使用的最新的 2.1.0.501版本,SDK:API Version 5
2、創(chuàng)建一個(gè)Empty Java Phone應(yīng)用
點(diǎn)擊Next
點(diǎn)擊Finish完成創(chuàng)建一碼通服務(wù)卡片工程
3、一碼通服務(wù)卡片頁(yè)面布局
首先完成一碼通服務(wù)卡片頁(yè)面的布局,代碼:
二、一碼通服務(wù)卡片卡片實(shí)現(xiàn)
第一步:卡片生成
鼠標(biāo)放在項(xiàng)目的包路徑上,然后右擊,點(diǎn)擊“Service Widget”,然后就可以創(chuàng)建服務(wù)卡片。
選擇“Basic”高級(jí)模式,然后再Template中選擇 “Grid Pattern”模板,然后點(diǎn)擊Next。
然后給服務(wù)卡片起名字,這里要就寫(xiě)個(gè)“OneCodePass”,選擇生成卡片的樣式,分別為1X2、2X2、2X4規(guī)格,然后點(diǎn)擊“Finish”完成創(chuàng)建。
然后會(huì)生成相關(guān)的模板代碼,以下是代碼的框架:
然后對(duì)OneCodePassAbility.java 和form_grid_pattern_onecodepass_*.xml布局文件修改,并新增準(zhǔn)備好的資源文件。
第二步:卡片布局的修改
我們制作了一個(gè)1X2、2X2和2X4的卡片,布局效果如下所示:
1X2卡片布局:
2X2卡片布局:
2X4卡片布局:
第三步:卡片信息創(chuàng)建、更新、刪除
對(duì)卡片進(jìn)行操作時(shí),需要將創(chuàng)建的卡片信息持久化,以便在下次獲取/更新該卡片實(shí)例時(shí)進(jìn)行使用。我們采用對(duì)象關(guān)系型數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)卡片信息,主要是在卡片創(chuàng)建的回調(diào)函數(shù)onCreateForm和卡片銷毀的回調(diào)函數(shù)onDeleteForm中存儲(chǔ)和刪除卡片信息。卡片需要存儲(chǔ)的信息包括:卡片ID、卡片名稱、卡片大小(2X2還是2X4等),代碼如下所示。
1、存儲(chǔ)卡片信息:
2、更新卡片信息:
3、刪除卡片信息:
卡片創(chuàng)建完成。
第四步、卡片在桌面的創(chuàng)建方式
在手機(jī)桌面上卡片的創(chuàng)建方式分為:設(shè)為上滑卡片或添加到桌面。
第五步:卡片的點(diǎn)擊跳轉(zhuǎn)
卡片默認(rèn)跳轉(zhuǎn)到個(gè)人健康碼,可以查看個(gè)人的健康碼詳情。
1、1x2卡片:
1.1、卡片:
2、2x2卡片:
2.1、卡片:
2.2、點(diǎn)擊卡片跳轉(zhuǎn)結(jié)果:
3、2x4卡片:
3.1、卡片
3.2、點(diǎn)擊卡片跳轉(zhuǎn)結(jié)果:
3.2.1、點(diǎn)擊通信大數(shù)據(jù)行程卡
3.2.2、點(diǎn)擊個(gè)人健康打卡:
3.2.3、點(diǎn)擊個(gè)人中心:
3.2.5、點(diǎn)擊常住人注冊(cè):
卡片頁(yè)面跳轉(zhuǎn)功能的重點(diǎn)代碼如下:
通過(guò)案例充分說(shuō)明了卡片的獨(dú)特優(yōu)點(diǎn):能夠?qū)A的重要信息或操作前置到卡片,以達(dá)到服務(wù)直達(dá),減少體驗(yàn)層級(jí)目的。
總結(jié)和回顧
本文通過(guò)一碼通服務(wù)卡片,手把手的教會(huì)大家如何實(shí)現(xiàn)一個(gè)HarmonyOS Java卡片,你將學(xué)會(huì)以下知識(shí)點(diǎn):
1)如何使用模板創(chuàng)建卡片
2)卡片的布局
3)卡片信息創(chuàng)建、更新和刪除過(guò)程
4)卡片的點(diǎn)擊跳轉(zhuǎn)事件
除此以外,你還會(huì)學(xué)到:
1)如何使用webview控件進(jìn)行網(wǎng)絡(luò)請(qǐng)求獲取數(shù)據(jù)
2)如何使用偏好型數(shù)據(jù)庫(kù),緩存卡片信息
創(chuàng)建服務(wù)卡片:
更新服務(wù)卡片:
刪除服務(wù)卡片:
想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):
51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)
























