文章目錄
在9月10日召開的華爲開發者大會上,宣佈了鴻蒙2.0系統正式面世,同時開啓了Beta版本的測試和開源網站。對於開發者來講兩個最關鍵的點值得關注:一個是Beta版的開發工具,一個是開源網站。css
1、開源網站
在開發者大會上宣佈將HarmonyOS源代碼捐贈給中國開放原子開源基金會,並在大會上公佈了鴻蒙系統的開源路線。html
官網地址:android
2、開發工具
鴻蒙使用基於Intellij IDEA深度定製研發的DevEco Studio做爲其開發工具。官方下載地址以下:github
3、鴻蒙應用初體驗視頻講解
全網最新最全面的DevEco Studio開發鴻蒙HarmomyOS項目初體驗。我這裏從五個方面給你們詳細講解鴻蒙應用開發,包括:開發工具安裝和配置;項目代碼分析;項目部署運行到模擬器;鴻蒙項目和Android項目對比;鴻蒙項目和微信小程序項目對比,最後一部分是結束語。小程序
- 開發工具安裝和配置。
- 項目代碼分析)。
- 項目部署運行到模擬器。
- 鴻蒙項目和Android項目對比。
- 鴻蒙項目和微信小程序項目對比。
- 最後一部分是結束語總結。
🎥 帶你一塊兒走進DevEco Studio開發鴻蒙應用初體驗系列視頻,點此進行觀看微信小程序
帶你一塊兒走進DevEco Studio開發鴻蒙應用初體驗系列視頻數組
4、視頻配套項目源碼地址
↓ 視頻配套項目源碼 Github 地址:微信
https://github.com/AweiLoveAndroid/AndroidVSHarmonygithub.com
↓ 視頻配套項目源碼 CodeChina CSDN 地址:
https://codechina.csdn.net/lzw2497727771/harmonyoslearning
5、HarmonyOS項目和Android項目對比
(一)資源目錄的變動
1.資源目錄名稱有更改
安卓res目錄,這裏用resources目錄, 它包括base 和 rawfile兩部分,其中base是核心的資源目錄,經常使用的都放在這裏面,便於查找和使用。rawfile會原封不動打包到生成的應用裏面。
安卓是res/values目錄,這裏是resources/element目錄。
安卓raw目錄,這裏用rawfile目錄。
2.資源目錄分門別類,統一管理
android目錄結構就比較鬆散,沒有統一的文件夾管理,res/values目錄裏面能夠建立各類資源的xml文件,只能去官網查看有哪些能夠建立。
這裏有base目錄統一管理。
3.部分資目錄刪除,新增一些資源目錄類型
好比float.json文件, plural.json文件, profile文件夾等。
4.編寫方式有改變,xml變動爲json
安卓的values裏面是xml寫的,這裏是element目錄裏面的,都是json格式的。
最後了一張同類型資源對比圖:
文件目錄介紹 | Android Studio res目錄 | 採用格式 | 備註 | DevEco Studioresources目錄 | 採用格式 | 備註 |
---|---|---|---|---|---|---|
資源目錄根路徑 | res目錄 | resources目錄 | ||||
動畫資源 | res/animation | XML | 用於屬性動畫 | resources/animation | XML | |
動畫資源 | res/anim | XML | 用於補間動畫 | resources/animation | XML | |
佈局資源 | res/layout | XML | resources/layout | XML | ||
元素資源根路徑 | res/values | XML | resources/element | JSON | ||
布爾類型資源 | res/values/bools.xml | XML | resources/element/boolean.json | JSON | ||
顏色類型資源 | res/values/colors.xml | XML | resources/element/color.json | JSON | ||
整型類型資源 | res/values/integer_arrays.xml | XML | resources/element/intarray.json | JSON | ||
組類型資源 | res/values/integers.xml | XML | resources/element/integer.json | JSON | ||
字符串數組類型資源 | res/values/string_arrays.xml | XML | resources/element/strarray.json | JSON | ||
字符串類型資源 | res/values/strings.xml | XML | resources/element/string.json | JSON | ||
樣式類型資源 | res/values/styles.xml | XML | resources/element/pattern.json | JSON | ||
浮點型類型資源 | 無 | resources/element/float.json | JSON | |||
複數形式類型資源 | 無 | resources/element/plural.json | JSON | |||
媒體資源 | resources/mipmap | 通常存放logo資源 | resources/media | 存放媒體資源,包括圖片、音頻、視頻等非文本格式的文件 | ||
存放通用的文件,它們不會被編譯成二進制文件,按原樣複製到設備上。 | resources/raw | 能夠存放js,html,css,音頻,視頻等各類文件資源 | resources/rawfile | 能夠存放js,html,css,音頻,視頻等各類文件資源 | ||
可繪製資源 | resources/drawable | resources/graphic | ||||
其餘類型文件 | 無 | resources/profile | 表示其餘類型文件,以原始文件形式保存 |
最後了一張同類型資源對比圖:
↓ 完整的資源目錄的具體變動對好比下圖所示:
(二)配置文件的變動
清單文件 AndroidManifest
變成了 config.json
文件。
(三)Java代碼的變動
↓ 完整的Java目錄的變動對好比下圖所示:
6、HarmonyOS項目和微信小程序項目對比
↓ 完整的JS目錄和微信小程序對好比下圖所示:
7、HarmonyOS優勢
(1)多終端開發調試便捷
鴻蒙目前支持能夠開發TV,wearable, LiteWearable幾種設備類型,將來還會擴展到其餘設備。而且一次代碼就能夠在不一樣設備快速部署和調試,操做很是簡易。
(2)對開發者友好,開發難度和學習成本低
1.IDE開發工具方面
DevEco Studio是基於Intellij IDEA工具定製化深度研發的一個工具,因此對於那些熟悉IDEA,或Android Studio或WebStorm這些IDE開發工具的朋友們來講應該是很熟悉的,不熟悉的朋友們也能夠很快就上手。
另外正是因爲是定製化的,因此去掉了IDEA裏面雜七雜八的東西,只保留與鴻蒙項目有關的SDK和工具與設置,開發工具簡潔純淨清爽,很是好用。
2.語言平臺
開發TV和Wearable項目能夠選擇Java或JS語言做爲開發語言,開發Lite Wearable項目僅支持JS語言,都是大衆喜好和用的多的開發語言,你們的接受程度很高。另外開發Lite Wearable項目須要用到**.hml**後綴的文件,這是鴻蒙團隊自研的一個標籤性語言,相似於 html
,學習起來一點都不費力。
3.框架方面
若是使用Java開發項目,你經過 Ctrl+鼠標左鍵
點進去查看源碼,你會發現SDK裏面有不少API都是跟Android相似的,似曾相識的感受。不過也有一些是基於鴻蒙內核和底層一些特性新增的。若是你使用JS開發,你會發現和微信小程序寫起來很相似。因此框架層你們一看基本均可以看明白是怎麼操做了,很好理解,也是你們均可以接受的,學習起來也不是難題。
4.權限處理
另外安卓權限的處理是很麻煩的,鴻蒙裏面 在config.json
裏面能夠配置全局的權限,被別人使用的權限,單獨模塊的權限,以及自定義屬於本身的權限,並且Java代碼裏面也能夠用代碼動態申請權限,鴻蒙的權限處理的顆粒度更細,對開發者來講,處理起來也是很是方便的。
5.測試方便,無需下載模擬器
鴻蒙使用的是雲測試,登錄開發者帳號便可鏈接雲設備,無需下載模擬器,仍是很便捷的,即便換一臺電腦,也不用擔憂由於沒有下載模擬器而耽誤測試進度,只要有網絡,登錄帳號便可進行測試。
8、HarmonyOS缺點
(1)HML語法有待增強,能夠進一步封裝完善
HML語法,雖然借鑑了微信小程序寫法,可是封裝組件尚未微信小程序那麼完善。竟然還有原始的 <div>
這種寫法。這就致使項目裏面既有原始的 <div>
標籤,也有 <text>
這種已經封裝好的組件,看起來仍是很彆扭的,致使了記憶難度大。但願下一步可以加強,爭取把原始的標籤都去掉,所有統一換成鴻蒙的標籤組件。
(2)鏈接遠程模擬設備有時間限制
仔細看的話,模擬器上面有一個倒計時,好像是一個小時。意思是否是每一個帳號只能有一個小時的體驗時間?這個我不是很明白,若是這真的是時間限制,那麼只好但願你們測試程序的時候儘量的節省時間。
(3)TV模擬器有些許卡頓,建議優化
經測試,在TV模擬器運行的時候,我建立了一個具備100個item的列表,可是滑動的時候有些許的卡頓,不是很流暢,建議模擬器優化一下更好。真機不清楚是否是也會有卡頓?
9、結束語
鴻蒙是前途無量的,雖然只是初始階段,可是投入這麼多人力物力,終於出來了成品展現給你們,將來,我相信它會更成熟。鴻蒙是面向全場景的設備的操做系統,凡是能夠聯網的智能設備均可以用它來開發應用,因此不要把眼光放在手機設備上面,要放眼將來,放眼任何設備,放眼【1+8+N】的佈局,1部手機能夠實現對平板、PC、穿戴、HD、Al音箱、耳機、VR、車機,以及N個將來的智能終端設備。當前擁有這麼便捷的開發方式,便捷的SDK,便捷的調試,文檔和源碼包羅萬象,趕忙來試試吧(必須註冊華爲開發者帳號才能夠開發)。
與其坐以待斃,不如早日擁有變化,各位看官趕忙瞭解一下吧。
鴻蒙之因此能取得成效,用牛頓的一句名言說就是:我之因此看得遠,是由於我站在巨人的肩膀上。