,在對harmonyOS有了一個初步認知之后,我們使用DevEco Studio來創建一個項目,把項目運行起來,先從整體上來了解一下harmonyOS項目的整體結構以及開發工具的基本使用。
1. 使用DevEco Studio創建項目
1.1 配置開發環境
在開發之前我們需要做一些准備工作
- 成為開發者之前,我們需要先注冊賬號,並實名(使用遠程模擬器需要),實名分為“個人實名”和“企業實名”。個人開發者做個人實名人證即可。注冊地址:https://developer.harmonyos.com/cn/home,該頁面右上角點擊注冊,完成實名即可。
- 下載開發工具,下載地址:https://developer.harmonyos.com/cn/develop/deveco-studio,DevEco Studio內置了OpenJDK,版本為1.8
- 下載nodejs,如果你是使用js的方式進行開發,需要下載nodejs,如果你僅用Java開發,可以先不裝nodejs
在實名完成並且下載了開發工具后,安裝DevEco Studio,一路next即可。完成安裝先不要打開。由於harmonyOS的應用基於gradle進行構建,因此請自行下載gradle並配置環境變量。
1.2 下載SDK
配置完成后,打開DevEco Studio,會提示下載harmonySDK,如下圖:
如果不需要更改SDK的路徑,直接Next即可。如果想更改SDK的路徑點擊Cancel,點擊Cancel后自己配置SDK路徑的方式如下:
- 在菜單欄點擊Configure > Settings(Mac系統為Configure > Preferences,快捷鍵Command+,),打開Settings配置界面。
- 進入Appearance & Behavior > System Settings > HarmonyOS SDK菜單界面,點擊Edit按鈕,設置HarmonyOS SDK存儲路徑。
紅框中的地址選擇你想要保存SDK的路徑,下邊的SDK Platforms列出了可用的SDK版本,可以根據需要下載。其中native通常是用來寫C++或者設備開發需要的,js和Java則對應了應用開發的兩種形式,如果你使用Java開發,可以只下載Java的,使用js開發同理。也可以兩個都安裝。選擇完點擊Apply,然后OK即可,入下圖:
2. 使用工具創建一個應用
環境和工具配置好后,就可以創建一個項目了。先創建一個項目,從整體上了解一下harmonyOS應用的整體框架。我們在一個布局里放置一個文本框顯示一個數字,再添加一個按鈕,每次點擊按鈕讓文本框中的數字加1。通過這樣一個小程序簡單來演示工具的使用和項目的基本框架
2.1 新建項目
工具菜單:File -->New-->New Project進行項目創建,會彈出如下的窗口:
新建項目的截圖中整體可分為兩塊,其中Device表示目前支持的設備。設備列表中從左到右依次為:手機,平板,車機,智慧屏,穿戴設備,輕型穿戴設備
下邊是新建項目時的模板選擇,因為我使用Java來開發,所以選擇第二個(Empty Feature Ability Java),點擊Next進入下個頁面,如圖:
配置項目名,包名,使用的sdk版本以及項目的保存路徑后,點擊完成即可,創建完成后項目會自動構建。構建成功后項目整體結構如下:
先完成我們的功能,后續再了解目錄及其作用。首先打開resources--base--layout目錄下工具為我們自動生成的布局文件,然后點擊工具右側的預覽,如下圖:
這是工具提供的一個預覽器,當我們寫xml布局的時候可以近乎實時的看到我們寫的代碼的效果。之后在ability_main.xml文件中寫如下代碼:
1 <?xml version="1.0" encoding="utf-8"?> 2 <DirectionalLayout 3 xmlns:ohos="http://schemas.huawei.com/res/ohos" 4 ohos:height="match_parent" 5 ohos:width="match_parent" 6 ohos:orientation="vertical"> 7 8 <Text 9 ohos:id="$+id:text" 10 ohos:height="match_content" 11 ohos:width="match_content" 12 ohos:layout_alignment="horizontal_center" 13 ohos:text="1" 14 ohos:text_size="30fp" 15 /> 16 <Button 17 ohos:height="match_content" 18 ohos:width="match_content" 19 ohos:text_size="18fp" 20 ohos:layout_alignment="horizontal_center" 21 ohos:background_element="$graphic:green_circle_button_element" 22 ohos:text_color="blue" 23 ohos:padding="15vp" 24 ohos:text="點擊加一"/> 25 26 </DirectionalLayout>
此時在預覽器中看到的效果如下:
接下來實現點擊加一的功能,打開項目自動創建的MainAbilitySlice文件,寫入以下代碼:
package com.example.demo.slice; import com.example.demo.ResourceTable; import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.Button; import ohos.agp.components.Component; import ohos.agp.components.Text; import ohos.agp.window.dialog.ToastDialog; public class MainAbilitySlice extends AbilitySlice { private int count = 1; @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_main); Text text = (Text) findComponentById(ResourceTable.Id_text); Button button = (Button) findComponentById(ResourceTable.Id_btn_add); button.setClickedListener(new Component.ClickedListener() { @Override public void onClick(Component component) { count++; text.setText(count + ""); } }); } @Override public void onActive() { super.onActive(); } @Override public void onForeground(Intent intent) { super.onForeground(intent); } }
到此為止,功能已經開發完畢,點擊工具上方菜單欄的Tools下邊的HVD Manager,彈出如下菜單:
這里需要登陸你注冊的華為賬號並且授權,點擊允許,跳到網頁授權,授權完成后,會彈出下面的界面:
這里可以選擇對應的遠程設備,因為我們創建項目時選的手機類型的項目,因此這里選P40,點擊后邊的藍色箭頭,之后在工具右側的預覽區會變成你選擇的P40手機
之后點擊工具右上方的按鈕啟動項目:
選擇你要鏈接的遠程機器:
圖中的AN00就是我們剛才選擇的P40遠程機器。之后工具會把你的項目安裝到遠程機器並運行起來
下圖是我點擊兩次按鈕后的效果:
下一篇會對本節我們創建的項目結構以及項目中的基本配置進行說明。讓我們可以根據需要自己去修改一些配置,做一些定制