
鴻蒙OS開發包括鴻蒙應用開發(手機,PC,平板等的app開發)和鴻蒙設備開發(硬體設備的開發);對于鴻蒙的應用開發入門,我們要學習的基礎知識包括有開發的環境搭建、啟動的流程,頁面的生命周期、跳轉,常見的布局、組件、事件以及高級組件,Ability,AbilitySlice,無界面的Ability,HiLog等等,那么到了應用開發進階階段,我們需要掌握的基本知識包括有多執行緒、資料庫、資料安全、服務器互動、json、http協議、(視頻/聲音)采集和處理、跨設備的呼叫等等,
接下來,就讓我們一起開始HarmonyOS 2.0應用開發的學習吧!
一、賬號注冊
首先我們要在官網注冊賬號并且實名認證,官網地址:www.harmonyos.com,在官網右上角點擊注冊,若已有華為賬號可以直接登錄的哦!
注意,在實名認證的時候,建議選擇下圖中的“是”哦!不然,將來若是需要用到下面的功能時,就得重新實名認證,會比較麻煩!

二、開發工具的下載和安裝
我們都知道做開發,編程語言是必不可少的,鴻蒙應用開發,我們可以使用的編程語言有Java、JavaScript、C/C++、還有華為自主研發的目前暫時還不可用的編程語言“倉頡”;而鴻蒙硬體開發最適合的語言還是C/C++,
那么我們還是要在官網的“開發”欄中下載開發工具IDE

小北選擇的是下圖的版本
下面就開始安裝了,注意路徑不能有中文字符哦!一直Next即可,安裝很簡單,

安裝好之后,我們需要同意協議


之后,我們還要下載開發所用的SDK,路徑可以自己設定

三、個性化IDE,并創建專案
安裝完成之后,我們可以對IDE進行一些個性化的設定,例如修改自己喜歡的主題,自動導包,設定字體大小,注釋的樣式等等,
創建專案




這樣一個專案就已經創建好了,相信大家看見這個UI會有IDEA非常熟悉的感覺,你的感覺沒有錯,IDE就是模仿IDEA來設計的,接下來我們可以對開發工具的個性化設定了,點擊File->settings…
1.設定主題

2.設定字體大小

3.設定注釋樣式

4.設定自動導包

四、專案的結構分析

五、Run第一個專案,Hello World
(1)登陸Huawei賬號:

會跳轉到瀏覽器中登錄:



(2)配置模擬器
注意; 模擬器并不需要我們去下載的哦,它是在華為的服務器中的,這樣我們就可以節省了很多資源,并且可以直接使用,還有一點就是模擬器的每次使用是有時間限制的哦(1個小時),當時間到了,我們還需要使用,則可以再次打開使用即可,



(3)運行專案

(4)頁面結構

每一個Ability都會被單獨打包成.hap的檔案,也就是一個Hap包,而將所有的Hap包,打包整理到一起就成為了一個應用App
(5)config.json組態檔
在這個組態檔中存放的是跟應用App相關的所有資訊,包括專案的配置資訊(app,例如專案的版本號,開發商的資訊等等);應用在手機等各種設備上的配置資訊(deviceConfig,例如應用使用時的行程名稱、是否聯網使用流量,是否支持后臺靜默運行等等);代碼中的配置資訊(module,例如Ability的配置)
下面我們來詳細分析下config.json組態檔的部分代碼塊
//整個專案的配置資訊
"app": {
"bundleName": "com.example.myapplication",
"vendor": "example",
"version": {
"code": 1000000,
"name": "1.0.0"
}
}
//解釋代碼塊:
bundleName :包名
vendor :應用的開發廠商的資訊
version :版本號,code只能公司內部開發人員可見,name使用者可見
//應用在手機等各種設備上的配置資訊,也就是應用權限
"deviceConfig": {}
//花括號為空就是什么權限都沒給,
//代碼中的配置資訊
"module": {
"package": "com.example.myapplication",
"name": ".MyApplication",
"mainAbility": "com.example.myapplication.MainAbility",
"deviceType": [
"phone"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "entry",
"moduleType": "entry",
"installationFree": false
},
"abilities": [
{
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
],
"orientation": "unspecified",
"name": "com.example.myapplication.MainAbility",
"icon": "$media:icon",
"description": "$string:mainability_description",
"label": "$string:entry_MainAbility",
"type": "page",
"launchType": "standard"
}
]
}
//解釋代碼塊:
package:包名
name:當前hap包的名字
mainAbility ;為hap包的入口ability的名稱
deviceType :表示專案可以運行在哪些設備上
distro :為hap包的一些描述資訊
deliveryWithInstall:表示當前的hap包是否支持隨應用安裝
moduleName :當前hap包的名稱
moduleType :當前hap包的型別,entry表示當前hap包是一個主要的模塊,可以獨立的安裝
installationFree : 是否支持無障礙安裝
abilities :為ability的配置資訊
(6)程式的運行程序分析
當我們運行程式時,首先會決議config.json檔案,并初始化,隨后會再獲取入口Ability的完全類名,然后會根據這個全類名來找到Ability并且運行它,然后還會接著繼續運行Ability的子頁面,最侄訓加載xml檔案展示出要顯示的內容,
🧡💛💚💙💜🤎💗
制作不易,點個贊,鼓勵鼓勵小北吧!
🧡💛💚💙💜🤎💗
一鍵三連走起來!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/291842.html
標籤:其他
