成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑

開發 前端 OpenHarmony
HarmonyOS主要支持java和js來開發應用(當然還有c和c++),而OpenHarmony不支持java來開發應用。目前階段HarmonyOS里面還是有部分功能是基于AOSP的,因此還是要用java,而OpenHarmony不再使用java,應該是想徹底放棄AOSP了。

[[425227]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

開篇第一句,所有學習與開發資料以官方資料為準。任何博客類只能作為參考,自行判斷優良,不要被誤導,包括本人的所有博客。

HarmonyOS官方文檔地址

應用開發:https://developer.harmonyos.com/cn/documentation

設備開發:https://device.harmonyos.com/

OpenHarmony官方文檔地址

https://gitee.com/openharmony/docs/

HarmonyOS應用開發&OpenHarmony應用開發區別

關于HarmonyOS與OpenHarmony的區別我這里不再過多闡述,請看開放原子基金會的官方介紹。

我這里著重從開發角度上講解它們的區別:

1、開發語言支持

HarmonyOS主要支持java和js來開發應用(當然還有c和c++),而OpenHarmony不支持java來開發應用。

目前階段HarmonyOS里面還是有部分功能是基于AOSP的,因此還是要用java,而OpenHarmony不再使用java,應該是想徹底放棄AOSP了。

2、sdk的不同

應用開發工具都是統一使用華為的DevEco Studio,但是使用的sdk不同,開發前首先要切換sdk配置。雖然HarmonyOS和OpenHarmony都可以用js來開發應用,但是它們的api還是有些細微的區別,OpenHarmony的api參考請參看OpenHarmony的官方文檔,千萬別看錯了。然后OpenHarmony的sdk請下載官方的支持OpenHarmony開發的sdk,而不是DevEco studio自帶的HarmonyOS sdk。

關于OpenHarmony sdk配置請參考官方文檔,我這里僅僅附上官方鏈接

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/配置OpenHarmony-SDK.md

3、創建項目方式不同

在DevEco 2.2Beat1版本之后,可以直接支持創建OpenHarmony應用項目了,創建方式如下:

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

這里重點對standard解釋下,即OpenHarmony官方說的“標準系統”,本文中所說的所有OpenHarmony應用開發都是針對的標準系統。

輕量和小型系統(參考內存<128MB)

標準系統(參考內存≥128MB)

詳細說明請看官方文檔

https://gitee.com/openharmony/docs/blob/master/zh-cn/readme.md

4、工程目錄結構不同

HarmonyOS JS項目結構:

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

OpenHarmony 項目結構:

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

5、運行調測方式不同

HarmonyOS支持previewer預覽、模擬器運行、真機運行三種方式,OpenHarmony支持previewer預覽、真機(目前主要使用3516系列開發板)運行。

首先,目前OpenHarmony是沒有模擬器的,真正運行調測只能借助開發板(主要采用HI3516系列開發板),注意目前是不支持手機平板等真機調測的。

6、簽名方式不同

OpenHarmony的簽名方式我這里就不贅述,直接附上官方文檔鏈接

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/配置OpenHarmony應用簽名信息.md

HarmonyOS的簽名我最想吐槽的就是需要添加設備ID。OpenHarmony的簽名我只想吐槽一句,既然open為何還必須要簽名

埋坑

上面的區別對比已經埋了部分坑了,下面再針對純粹上層應用開發人員初次接觸OpenHarmony開發的坑。

1、OpenHarmony操作系統編譯

為何要編譯操作系統,如果你手上有現成的安裝好操作系統的開發板你,操作系統和sdk版本也對應,比如我們是基于OpenHarmony-SDK-2.0-Canary版本,那你應該燒錄一個對應的操作系統版本。比如我手上是很久之前的一個1.0版本的3516開發板,顯然要升級。

操作系統編譯的完整資料依然請參考官網:

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-standard.md

關于這里我強調幾點:

(1)使用repo進行代碼倉同步時

官方描述的操作命令如下

  1. repo sync -c 

 建議替換成

  1. repo sync -c -j8 

 這個后面的數字8根據自己的cpu核數進行設置,查看cpu核數的命令如下

  1. grep -c 'processor' /proc/cpuinfo 
從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

這樣配置之后,會大大加快你的同步速度,否則這個同步時間會非常漫長

同步過程請使用無限制的公網網絡,比如某些公司訪問外網會有限制。然后就是網絡下載速度也會會直接關系到你的同步速度。

repo中途同步失敗了(比如斷網或者異常關機),也不要過于緊張,可以根據log提示刪除某些同步異常的部分倉庫,然后繼續執行上面的同步命令即可。

(2)編譯環境安裝時

Linux編譯服務器終端輸入不識別的命令時,提示"ImportError: No module named apt_pkg"

解決辦法:

執行如下命令重新安裝python3-apt。

  1. sudo apt-get remove  python3-apt 
  2. sudo apt-get install python3-apt 

(3)編譯構建時

編譯構建時,我這里遇到一個大坑,就是電腦突然斷電了,然后再執行編譯的時候報大量錯誤,錯誤內容如下

rm: cannot remove ‘XXXXX‘: Bad message,這種問題本來可以采用fsck 的方式來修復文件系統,但是由于編譯過程中產生了大量的很小的臨時文件,所以修復起來太慢太不現實,干脆刪除了虛擬機重新加載之前保存的虛擬機鏡像,重新再來一次。

2、操作系統燒錄

官方描述的是使用網口進行燒錄,官網地址如下

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-standard-burn.md

需要注意的點:

本文檔針對的開發版是官方推薦的AI_Camera_Hi3516DV300開發套件。

(1)確保USB轉串口驅動能安裝上,即在PC的設備管理器上能識別到COM口

首先安裝USB-to-Serial Comm Port.exe驅動,如果沒有識別請再安裝CH341SER驅動。

(2)網口燒錄注意事項

不支持無線,需要使用網線直連PC,網卡是千兆網卡,最好選擇六類網線,這樣速度更快。

PC端需要設置ip地址為192.168.1.2/24,網關為192.168.1.1,如下圖

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

燒錄工具上網口的設置:

  • upload_net_server_ip:對應PC上網口設置的地址
  • upload_net_client_mask:設置開發板的子網掩碼,對應PC上設置的子網掩碼,確保開發板和pc在一個網段。
  • upload_net_client_gw:和PC上設置的網關保持一致。
  • upload_net_client_ip:設置開發板的IP地址,例如192.168.1.3,確保和PC在一個網段即可。

我沒有使用官方推薦的DevEco Device Tool進行燒錄,而是使用了我喜歡的HiBurn進行燒錄,但是基本配置相同,截圖如下

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

點完燒寫按鈕之后,需要先下電再上電,上電之后就會自動進行燒寫了。

網口燒錄時間比較慢,標準系統2.2beta版本燒錄估計要20分鐘。

(3)USB燒錄(強烈推薦,最快的方式,一分鐘即可燒寫完畢)

這種方式是我在配置過程中最卡我的一種方式。主要就是USB的驅動一直無法識別。首先我們來看看正確識別驅動之后,設備管理器中的頁面,必須看到通用串行設備下識別了設備才行,如下圖

從HarmonyOS過渡到OpenHarmony應用開發指南&埋坑-鴻蒙HarmonyOS技術社區

(1)開發套件上面有兩個typec接口,屁股后面的那個才是USB口,前面的僅僅是供電口。

(2)安裝HiUSBBurnDriver驅動程序

(3)win10操作系統需要修改注冊表

a.創建一個“文本文檔.TXT”,文件后綴名修改為.reg,如usb.reg。

b.右鍵打開創建的usb.reg,將如下腳本拷貝到該文件中,然后保存并關閉。

  1. Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\12D1D0010100]"SkipBOSDescriptorQuery"=hex:01,00,00,00"osvc"=hex:00,00"IgnoreHWSerNum"=hex:01 

c.雙擊執行usb.reg文件,自動修改注冊表文件信息

(4)我PC依然遲遲無法識別USB驅動的時候,我在系統的boot里面(串口終端連接下,進入uboot之前,狂按回車進入boot)輸入以下命令終于解決了無法識別驅動的問題

  1. usb device 

(5)待識別了USB驅動之后燒錄需要注意的問題

設置好燒錄鏡像之后,在下電在上電之前,請一直按住開發板上面的update按鈕(在開發板的串口旁邊),上電之后,待出現開始燒寫的打印之后再松開按鈕。

3、OpenHarmony安裝應用到開發板

此處依然貼出對應的官方文檔

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/安裝運行OpenHarmony應用.md

(1)這里使用的是hdc_std.exe,而不是HarmonyOS sdk中的hdc.exe;

(2)hdc_std.exe在哪里?

它在OpenHarmony sdk的toolchains目錄下面,確保它和開發板上的版本一致,即確保sdk版本和開發板的操作系統版本匹配即可。

4、自己編譯OpenHarmony SDK

為了確保sdk和自己燒寫的操作系統版本一致,我們可以自己編譯sdk。

編譯命令如下:

  1. ./build.sh --product-name ohos-sdk --ccache 

結果輸出:

  1. out/ohos-arm64-release/packages/ohos-sdk/ 

耗時了好久終于寫完了,希望本文加上配上OpenHarmony官方的文檔能夠幫助更多的開發者快速投入OpenHarmony共建中。

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2020-11-20 10:29:37

云計算邊緣計算物聯網

2022-11-04 14:58:59

應用開發鴻蒙

2020-12-17 13:12:06

數據中心DCIMDMAAS

2024-11-26 00:40:05

2021-01-07 10:15:24

數據中心邊緣數據中心網絡

2011-04-18 11:00:34

使用音頻BlackBerry

2023-05-08 15:59:27

UI自動化腳本鴻蒙

2013-11-20 09:22:44

IPv4過渡IPv6

2021-01-15 10:28:19

數據中心邊緣數據中心

2011-11-29 16:38:58

Knockout

2011-12-05 14:50:13

Knockout

2012-01-04 16:21:11

2011-12-05 15:44:45

Knockout

2020-06-12 10:10:26

云計算IT技術

2010-08-24 11:14:05

OfficeOpenOffice網絡安全

2021-06-21 15:21:52

鴻蒙HarmonyOS應用開發

2019-01-28 11:51:06

開發技能代碼

2021-03-01 09:48:24

鴻蒙HarmonyOS應用開發

2021-02-24 15:22:47

鴻蒙HarmonyOS應用開發

2011-04-15 15:16:28

使用圖像對象畫圖BlackBerry
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 蜜桃视频在线观看免费视频网站www | 中文字幕成人 | 天堂在线中文 | 91看片在线观看 | 国产精品免费视频一区 | 久久久91| 午夜寂寞影院在线观看 | 欧美 日韩 在线播放 | 99精品国产一区二区青青牛奶 | 野狼在线社区2017入口 | 91成人免费| 国产一区二区欧美 | 久久精品福利视频 | 欧美a v在线 | 日韩精品一区二区三区视频播放 | 欧美日韩精品在线免费观看 | 精品一二三区 | 中文字幕av在线 | 久久国产香蕉 | 在线播放国产一区二区三区 | 婷婷综合 | 色婷婷一区 | 九九av| 精品国产免费人成在线观看 | 在线āv视频 | 一级在线观看 | 在线成人免费视频 | 久久久久久久一区 | 久久伊人一区 | 日本啊v在线| 91av导航 | 久久久这里只有17精品 | 精国产品一区二区三区四季综 | 国产精品视频一区二区三区四区国 | 日本人做爰大片免费观看一老师 | 欧美成人免费在线视频 | 羞羞视频免费观看 | 精品久久久久久一区二区 | 亚洲国产精品99久久久久久久久 | 麻豆av一区二区三区久久 | 久久久国产一区 |