uni-app 開發HarmonyOS的鴻蒙影視項目分享:從實戰案例到開源后臺

最近,HBuilderX 新版本發布,帶來了令人興奮的消息——uni-app 現在支持 Harmony Next 平臺的 App 開發。這對于開發者來說無疑是一個巨大的福音,意味著使用熟悉的 Vue 3 語法和開發框架,就可以為鴻蒙生態貢獻自己的力量。

前言

作為一名開發者,我之前完成了一個有趣的項目——一個基于 uni-app 的免費觀影 App。經過一番嘗試,這個 App 已經成功編譯到鴻蒙平臺,可以在鴻蒙設備上流暢運行。這不僅為我的學習之路增添了新的成就感,也為想要嘗試鴻蒙應用開發的朋友們提供了一個基于uniapp的鴻蒙學習經典案例。
在這里插入圖片描述

鴻蒙系統的出現,對于廣大開發者來說是一個全新的挑戰與機遇。使用 uni-app 開發鴻蒙應用,無需從零開始學習鴻蒙的原生開發語言和框架,就可以快速上手,這對于很多非鴻蒙原生開發背景的開發者來說是非常友好的。而對于已經熟悉 uni-app 的開發者來說,開發鴻蒙應用更是如魚得水,效率大幅提升。

編譯成功截圖:
在這里插入圖片描述
關于源uniapp的免費觀影app介紹:

參見《uni-app 影視類小程序開發從零到一 | 開源項目分享》:https://blog.csdn.net/yyz_1987/article/details/140575597?spm=1001.2014.3001.5502

項目背景

我的免費觀影 App 項目,主要是為了激發學習興趣,讓開發者能夠通過實際操作項目,快速看到自己的成果。項目中采用了 Vue 3 的語法和一些常用的前端技術,如 Vuex 管理狀態,Vue Router 實現頁面跳轉,以及一些第三方庫來提升用戶體驗。通過這個項目,開發者不僅能夠學習 uni-app 的基本用法,還能夠接觸到一些常見的前端開發模式和最佳實踐。

uniapp觀影app項目地址:https://gitee.com/yyz116/imovie

鴻蒙原生版本觀影app項目地址:https://gitee.com/yyz116/hmmovie

此外,這個項目還基于開源的golang影視后臺服務接口進行開發。這個接口提供了豐富的影視資源數據,包括電影、電視劇、動漫等,開發者可以通過簡單的 API 請求獲取到這些數據,并在自己的應用中進行展示和播放。為了方便更多愛好者的學習和使用,我決定將這個接口的源代碼(基于golang+mongoDB)也開源出來。

后臺服務開源地址:https://gitee.com/yyz116/go-imovie

如果不想部署后臺服務,則可以聯系我,暫時使用我部署好的后臺接口服務,但僅限于學習哈,別分享給他人免費看電影。

這個影視后臺服務接口采用了 golang的 go-zero微服務 框架進行開發,使用 MongoDB 來存儲數據。接口提供了一系列 RESTful API,包括獲取電影列表、獲取電視劇列表、獲取動漫列表、獲取影視詳情等,還有其他一些方便練習的接口服務如知乎日報,網易云音樂接口。

通過這個項目,開發者不僅可以學習到如何使用 uni-app 開發鴻蒙應用,還可以學習到如何設計和實現一個簡單的后臺服務接口。這對于想要深入了解全棧開發的開發者來說,是一個非常好的學習機會。

uniapp對鴻蒙的支持

自 HBuilderX 4.27 版本開始,uni-app 支持Harmony Next平臺的App開發。目前僅支持 uniapp的vue3 項目或者uniapp-x的項目編譯到鴻蒙平臺。且只要你的項目中沒有使用特定的針對android或其他平臺的插件,都可以成功的編譯到鴻蒙平臺。

兼容性說明

HBuilderX 4.24+ 開始支持運行到鴻蒙平臺
鴻蒙開發只支持Vue3、不支持Vue2,不支持plus、但支持nvue
nvue編譯到鴻蒙后非原生渲染,而是與web一樣渲染(自動注入一些默認樣式進行兼容)
Vue3也支持選項式代碼風格,參考Vue2升Vue3指南
HBuilderX 4.31+ 構建的鴻蒙運行包不支持 x86_64 平臺,會影響到 Windows 系統和部分 Mac 系統的鴻蒙模擬器無法使用,需使用真機調試
HBuilderX 4.41+ 開始運行到鴻蒙設備時支持修改代碼后熱刷更新
HBuilderX 4.41+ 開始運行到鴻蒙設備時控制臺顯示的應用日志支持回源代碼
HBuilderX 4.43+ 開始支持將 mainfest.json 里面配置的應用版本名稱/應用版本號(versionName/versionCode)應用于鴻蒙平臺,且優先于 harmony-configs/AppScope/app.json5 中的設置
HBuilderX 4.61+ 開始支持 uni-app x 項目,且支持開啟調試功能
HBuilderX 4.61+ 開始支持配置簽名證書,且支持自動申請調試證書

開發環境要求

HBuilderX 4.24+ 下載地址
DevEco Studio 下載地址
HBuilderX 4.24+ 要求 DevEco Studio 5.0.3.400+
HBuilderX 4.31+ 要求 DevEco Studio 5.0.3.800+。
HBuilderX 4.61+ 針對 uni-app x 項目要求 DevEco Studio 5.0.7.100+。

uni-app 項目要求鴻蒙系統版本 API 12 以上,uni-app x 項目要求鴻蒙系統版本 API 14 以上(DevEco Studio有內置鴻蒙模擬器)
如果沒有符合兼容性要求的模擬器,就需要有真機作為運行設備

環境設置

默認情況下,HBuilderX 會在項目內的 unpackage 目錄下游創建鴻蒙工程目錄,用于構建鴻蒙的運行包和發行包:

調試運行的時候默認使用的鴻蒙工程目錄位于 unpackage/dist/dev/app-harmony
發行打包的時候默認使用的鴻蒙工程目錄位于 unpackage/dist/build/app-harmony

在 HBuilderX 中設置 DevEco Studio 的安裝位置:

HBuilderX 依賴于 DevEco Studio 里面帶的鴻蒙工具鏈,所以需要電腦已經安裝了符合版本要求的 DevEco Studio。

打開HBuilderX,點擊上方菜單 - 工具 - 設置,再點擊 運行配置,在鴻蒙運行配置中設置 DevEco Studio 的安裝路徑。
在這里插入圖片描述

寫在最后

總的來說,uni-app 開發鴻蒙應用是一個非常有趣的過程,不僅可以提升開發效率,真正實現一端多發,開發一次全平臺運行。還可以為鴻蒙生態做出自己的貢獻。我相信,隨著 uni-app 和鴻蒙平臺的不斷發展和完善,未來將會有更多的開發者加入到鴻蒙應用開發的行列中來。如果你也對這個領域感興趣,不妨嘗試一下吧,相信你也會從中獲得很多樂趣和收獲的!

希望我的分享能夠對你有所幫助,如果你有任何問題或建議,歡迎在評論區留言交流。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81470.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81470.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81470.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

純css實現蜂窩效果

<!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>蜂窩效果</title><style>body {margin: 0…

JAVA EE_HTTP

為什么意氣風發的少年&#xff0c;總是聽不進去別人的勸解。 ??????? ??????? ----------陳長生. ?主頁&#xff1a;陳長生.-CSDN博客? &#x1f4d5;上一篇&#xff1a;JAVA EE_網絡原理_數據鏈路層-CSDN博客 1.HTTP 1.1.HTTP是什么 H…

存儲扇區分配表:NAND Flash與SD NAND(貼片式SD卡)的架構差異

NAND Flash 和 SD 卡&#xff08;SD NAND&#xff09;的存儲扇區分配表在原理上有相似之處&#xff0c;但由于二者的結構和應用場景不同&#xff0c;也存在一些差異。 相同點&#xff1a; 基本功能&#xff1a;NAND Flash 和 SD 卡&#xff08;SD NAND&#xff09;的存儲扇區分…

界面控件DevExpress WinForms中文教程:Banded Grid View - API

DevExpress WinForms擁有180組件和UI庫&#xff0c;能為Windows Forms平臺創建具有影響力的業務解決方案。DevExpress WinForms能完美構建流暢、美觀且易于使用的應用程序&#xff0c;無論是Office風格的界面&#xff0c;還是分析處理大批量的業務數據&#xff0c;它都能輕松勝…

4G物聯網模塊實現廢氣處理全流程數據可視化監控配置

一、項目背景 隨著工業化進程的加速&#xff0c;工業廢氣的排放對環境造成了嚴重影響&#xff0c;廢氣處理廠應運而生。然而&#xff0c;廢氣處理廠中的設備眾多且分散&#xff0c;傳統的人工巡檢和數據記錄方式效率低下&#xff0c;難以及時發現問題。為了實現對廢氣處理設備…

Kubernetes控制平面組件:Kubelet詳解(四):gRPC 與 CRI gRPC實現

云原生學習路線導航頁&#xff08;持續更新中&#xff09; kubernetes學習系列快捷鏈接 Kubernetes架構原則和對象設計&#xff08;一&#xff09;Kubernetes架構原則和對象設計&#xff08;二&#xff09;Kubernetes架構原則和對象設計&#xff08;三&#xff09;Kubernetes控…

【數據結構】線性表--隊列

【數據結構】線性表--隊列 一.什么是隊列二.隊列的實現1.隊列結構定義&#xff1a;2.隊列初始化函數&#xff1a;3.隊列銷毀函數&#xff1a;4.入隊列函數&#xff08;尾插&#xff09;&#xff1a;5.出隊列函數&#xff08;頭刪&#xff09;&#xff1a;6.取隊頭元素&#xff…

C語言—再學習(結構體)

一、建立結構體 用戶自己建立由不同類型數據組成的組合型的數據結構&#xff0c;它稱為結構體。 struct Student { int num; //學號char name[20]; //名字為字符串char sex; //性別int age; //年紀float score; //分數char addr[30]; 地址為字符…

【前端基礎】10、CSS的偽元素(::first-line、::first-letter、::before、::after)【注:極簡描述】

一、偽元素的作用 選取某個特定的元素。 二、::first-line、::first-letter ::first-line&#xff1a;針對首行文本設置屬性 ::first-letter&#xff1a;針對首字母設置屬性 三、::before、::after 在一個元素之前&#xff08;::before&#xff09;或者之后&#xff08;…

系統漏洞掃描服務:維護網絡安全的關鍵與服務原理?

系統漏洞掃描服務是維護網絡安全的關鍵措施&#xff0c;能夠迅速發現系統中的潛在風險&#xff0c;有效預防可能的風險和損失。面對網絡攻擊手段的日益復雜化&#xff0c;這一服務的重要性日益顯著。 服務原理 系統漏洞掃描服務猶如一名恪盡職守的安全守護者。它運用各類掃描…

從 Excel 到 Data.olllo:數據分析師的提效之路

背景&#xff1a;Excel 的能力邊界 對許多數據分析師而言&#xff0c;Excel 是入門數據處理的第一工具。然而&#xff0c;隨著業務數據量的增長&#xff0c;Excel 的一些固有限制逐漸顯現&#xff1a; 操作容易出錯&#xff0c;難以審計&#xff1b; 打開或操作百萬行數據時&…

框架的源碼理解——V3中的ref和reactive

最近在研究各個框架的源碼&#xff0c;從源碼角度去理解 vue3 的 reactive 和 ref API&#xff0c;記錄下研究的成果 reactive 首先&#xff0c;reactive() 的參數必須是一個對象&#xff0c;返回值是一個 Proxy 對象&#xff0c;具有響應性。如果參數不是對象類型&#xff0…

能源數字化轉型關鍵引擎:Profinet轉Modbus TCP網關驅動設備協同升級

在工業自動化的世界中&#xff0c;ModbusTCP和Profinet是兩個非常重要的通訊協議。ModbusTCP以其開放性和易用性&#xff0c;被廣泛應用于各種工業設備中&#xff1b;而Profinet則以其高效性和實時性&#xff0c;成為了眾多高端設備的首選。然而&#xff0c;由于這兩種協議的差…

【ant design】ant-design-vue 4.0實現主題色切換

官網&#xff1a;Ant Design Vue — An enterprise-class UI components based on Ant Design and Vue.js 我圖方便&#xff0c;直接在 app.vue 中加入的 <div class"app-content" v-bind:class"appOption.appContentClass"><a-config-provider…

一個指令,讓任意 AI 快速生成思維導圖

大家好&#xff0c;我是安仔&#xff0c;一個每天都在壓榨 AI 的躺平打工人。 今天分享一個 AI 辦公小技巧&#xff0c;讓你用一個指令讓 AI 生成思維導圖。 DeepSeek、Kimi、豆包都可以哈 &#xff5e; KimiXMind 安仔經常用 XMind 來繪制思維導圖&#xff0c;但是 AI 是沒…

便捷的批量打印工具推薦

軟件介紹 本文介紹的軟件是一款批量打印軟件&#xff0c;名為PrintConductor。 軟件功能強大 這款批量打印軟件功能極為強大&#xff0c;它不僅能夠批量打印各種不同格式的文件&#xff0c;還可以直接打印整個文件夾。 初次使用設置 第一次打開這款軟件時&#xff0c;要記…

USRP 射頻信號 采集 回放 系統

USRP 射頻信號采集回放系統 也可以叫做&#xff1a; 利用寬帶RF錄制和回放系統實現6G技術研究超寬帶射頻信號采集回放系統使用NI USRP平臺實現射頻信號錄制和回放操作演示USRP也能實現多通道寬帶信號流盤回放了&#xff01; 對于最簡單的實現方法就是使用LabVIEW進行實現 采…

MFC 調用海康相機進行軟觸發

初始化相機類文件 #pragma once #include "MvCameraControl.h" class CMvCamera { public:CMvCamera();~CMvCamera();//初始化相機int InitCamera();int SaveCurrentImage(CString filePath);//關閉相機void CloseCamera();//設置int SetEnumValue(IN const char* s…

虛擬主播肖像權保護,數字時代的法律博弈

首席數據官高鵬律師團隊 在虛擬主播行業蓬勃發展的表象之下&#xff0c;潛藏著一場關乎法律邊界的隱形戰爭。當一位虛擬偶像的3D模型被非法拆解、面部數據被批量復制&#xff0c;運營方驚訝地發現——傳統的肖像權保護體系&#xff0c;竟難以完全覆蓋這具由代碼與數據構成的“…

ArrayList-集合使用

自動擴容&#xff0c;集合的長度可以變化&#xff0c;而數組長度不變&#xff0c;集合更加靈活。 集合只能存引用數據類型&#xff0c;不能直接存基本數據類型&#xff0c;除非包裝 ArrayList會拿[]展示數據