本文針對華為HarmonyOS智能穿戴產(chǎn)品(即HUAWEI WATCH 3)開發(fā)了一款運動健康類的游戲化APP——Fitness,旨在通過游戲化的方式,提升用戶運動動機。
一. 客戶端開發(fā)
開發(fā)環(huán)境:客戶端UI是基于HarmonyOS進行開發(fā)的,所以IDE使用的是華為的DevEco-Studio。
語言:采用的編程語言是JavaScript,基于JS擴展的類Web開發(fā)范式的方舟開發(fā)框架。
核心功能:
- 用戶的虛擬形象陪伴用戶一起做運動;
- 每日運動目標(運動時間、消耗卡路里);
- 運動中時間、心率、消耗卡路里的記錄;
- 完成運動獲取愛心獎勵(可用于在慈善活動中捐獻);
- 合作:與好友一起運動,共同達成目標,獲取獎勵;
- 挑戰(zhàn)、徽章:完成運動挑戰(zhàn),獲取徽章或其他獎勵;
1. 創(chuàng)建項目(Create Project)
?2. 項目結(jié)構(gòu)
(1)各功能模塊頁面存放在pages文件夾中,每個頁面都由.hml、.css、.js三個同名文件組成;
(2)圖片資源存放在common/images文件夾中;
3. 功能模塊介紹
3.1 登錄頁 login
用戶輸入賬號密碼,點擊登錄按鈕進行登錄。
(1)登錄失?。禾崾尽坝脩裘蛎艽a錯誤”。
(2)登錄成功:跳轉(zhuǎn)到首頁 index。
?
?3.2 首頁 index
首頁外圈黃色進度條是用戶今日的運動時間進度。
首頁中間由一個三頁的Swiper組成,滑動可以切換頁面:最左側(cè)的運動頁、最中間的目標頁、最右側(cè)的活動頁。
(1)目標頁:從上到下依次是用戶虛擬形象、時鐘(當前時間)、用戶今日運動消耗的卡路里進度(目前已消耗卡路里/目標消耗卡路里)。
(2)運動頁:最上方是開始運動按鈕,點擊可以選擇要做的運動類型 [跳轉(zhuǎn)到 choosesport ] 之后開始記錄此次運動。按鈕下方是最近的五條運動記錄列表,可以上下滑動查看。
(3)活動頁:最上方是用戶當前參與合作的進度(若用戶當前沒參加任何合作,則該處顯示的是開始合作按鈕,點擊開始合作按鈕可以選擇合作目標 [跳轉(zhuǎn)到 chooseteamgoal ] 和要合作的好友,開啟一次合作)。中間是系統(tǒng)最新發(fā)起的挑戰(zhàn),包括挑戰(zhàn)名稱、挑戰(zhàn)描述。最下方是用戶最近獲得的八枚徽章列表,可以左右滑動查看。?
?3.3 選擇運動類型頁 choosesport
在首頁的運動頁點擊開始運動后,進入選擇運動類型頁,該頁主要由一個picker組成,用戶選擇自己要做的運動類型,點擊確定即可開始運動,跳轉(zhuǎn)到運動中頁?sporting。
?3.4 運動中頁 sporting
運動中頁顯示用戶虛擬角色、運動時長、消耗卡路里、當前心率。下方三個按鈕分別為“取消”(點擊后跳轉(zhuǎn)回首頁 index,不記錄此次運動)、”暫停“(暫停運動時長記錄和卡路里記錄)、”完成“(完成此次運動,點擊后跳轉(zhuǎn)到運動結(jié)束頁 sportend,記錄此次運動)。
?3.5 運動結(jié)束頁 sportend
顯示此次運動的時間、消耗的卡路里,點擊確定按鈕跳轉(zhuǎn)到首頁 index。
?3.6 選擇合作目標頁 chooseteamgoal
在首頁的活動頁點擊開始合作后,進入選擇合作目標頁,該頁主要由一個雙列picker組成,用戶選擇目標的運動類型和目標的運動時間,點擊下一步,跳轉(zhuǎn)到選擇合作好友頁?chooseteam。
3.7??選擇合作好友頁?chooseteam
該頁主要由一個picker組成,用戶選擇想要與之合作的好友,點擊確定,跳轉(zhuǎn)到首頁 index的合作頁,此時已經(jīng)開始了與此好友的合作。
3. 源碼?
https://gitee.com/song-ddd/harmony-smartwatch-fitnesshttps://gitee.com/song-ddd/harmony-smartwatch-fitness
二. 服務器端開發(fā)
開發(fā)環(huán)境:服務器端API接口是基于Node.js進行開發(fā)的,IDE使用的是VSCode。
語言:采用的編程語言是JavaScript,服務器框架是Koa,數(shù)據(jù)庫是MongoDB。
核心接口:
- 用戶接口:登錄注冊、用戶個人信息的增刪改查、用戶好友的增刪查;
- 運動接口:運動類型的增刪改查、用戶運動記錄的增刪查;
- 合作接口:用戶合作記錄的增刪改查;
- 徽章接口:徽章類型的增刪改查、用戶獲得徽章記錄的增刪查;
- 挑戰(zhàn)接口:挑戰(zhàn)類型的增刪改查、用戶挑戰(zhàn)記錄的增刪查;
- 慈善接口:慈善活動的增刪改查、用戶參與慈善捐贈記錄的增刪查;
1. 創(chuàng)建項目(Create Project)
Vue2+Node.js前后端分離項目創(chuàng)建常用配置及踩坑點_番大茄子的博客-CSDN博客Vue2+Node.js前后端分離項目創(chuàng)建常用配置及踩坑點https://blog.csdn.net/SongD1114/article/details/123955511?spm=1001.2014.3001.5502Node.js中使用Koa創(chuàng)建Web服務器、編寫接口_番大茄子的博客-CSDN博客_koajsKoa (基于 Node.js 平臺的下一代 web 開發(fā)框架 koa (koajs)是由 Express 原班人馬打造的,致力于成為一個更小、更富有表現(xiàn)力、更健壯的 Web 框架。使用 koa 編寫 web 應用,通過組合不同的 generator,可以免除重復繁瑣的回調(diào)函數(shù)嵌套,并極大地提升錯誤處理的效率。https://www.koajs.com.cn/https://blog.csdn.net/SongD1114/article/details/124406361?spm=1001.2014.3001.5502
?2. 項目結(jié)構(gòu)
采用MVC設計模式劃分各模塊:models、controllers、routers
文章來源:http://www.zghlxwxcb.cn/news/detail-476222.html
3. 數(shù)據(jù)庫表
文章來源地址http://www.zghlxwxcb.cn/news/detail-476222.html
4. 源碼
https://gitee.com/song-ddd/smartwatch-fitnesshttps://gitee.com/song-ddd/smartwatch-fitness
到了這里,關(guān)于基于HarmonyOS的華為智能手表APP開發(fā)實戰(zhàn)——Fitness的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!