自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

手把手教你搭建鴻蒙hi3518開發(fā)和運(yùn)行環(huán)境

開發(fā)
學(xué)習(xí)C語言,C++語言,數(shù)據(jù)結(jié)構(gòu)和算法,操作系統(tǒng),網(wǎng)絡(luò),驅(qū)動(dòng),設(shè)計(jì)模式等知識(shí),用鴻蒙來強(qiáng)化就太對(duì)了。本文教你一步一步搭建鴻蒙的開發(fā)和運(yùn)行環(huán)境,有點(diǎn)啰嗦,適合小白。

[[375671]]

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

前言

學(xué)習(xí)C語言,C++語言,數(shù)據(jù)結(jié)構(gòu)和算法,操作系統(tǒng),網(wǎng)絡(luò),驅(qū)動(dòng),設(shè)計(jì)模式等知識(shí)。

用鴻蒙來強(qiáng)化就太對(duì)了。本文教你一步一步搭建鴻蒙的開發(fā)和運(yùn)行環(huán)境,有點(diǎn)啰嗦,適合小白。

本文所涉及的所有工具都可以在這里找到(提取碼pbe2)。

具體有下列步驟:

  • 組裝開發(fā)板
  • 連接開發(fā)板
  • 安裝串口驅(qū)動(dòng)
  • 安裝USB驅(qū)動(dòng)
  • 安裝燒錄工具
  • 擦除引導(dǎo)程序
  • 燒錄系統(tǒng)
  • 登錄開發(fā)板
  • 修改OS啟動(dòng)地址
  • 運(yùn)行可執(zhí)行程序
  • 安裝VMWARE
  • 安裝編譯服務(wù)器
  • 訪問編譯服務(wù)器
  • 編譯鴻蒙產(chǎn)品
  • 編譯鴻蒙組件
  • 打通開發(fā)板網(wǎng)絡(luò)
  • 部署NFS
  • 新增自定義組件

組裝開發(fā)板

我們選用HiSpark IPC DIY Camera產(chǎn)品。內(nèi)部含hi3518ev300芯片。

請(qǐng)參考產(chǎn)品的安裝說明書。

或者參考安裝視頻指導(dǎo)。

連接開發(fā)板

開發(fā)板和PC的連接關(guān)系如下圖。2條usb線(產(chǎn)品包裝中的),其中一個(gè)三針插頭,一個(gè)四針插頭。



安裝串口驅(qū)動(dòng)

請(qǐng)雙擊USB-to-Serial Comm Port.exe。進(jìn)行串口驅(qū)動(dòng)安裝,安裝完成后。在設(shè)備管理器中應(yīng)該能看到下面這樣的COM接口,你的COM接口編號(hào)可能有所不同。表明串口驅(qū)動(dòng)安裝成功。


安裝USB驅(qū)動(dòng)

然后雙擊zadig-2.5.exe安裝通用USB驅(qū)動(dòng),點(diǎn)擊中間的Install。


安裝燒錄工具

直接解壓HiTool-HM-5.4.9-win32-x86_64.zip文件。然后雙擊其中的HiTool.exe. 界面如下圖。然后先將芯片切換到3518ev300。


擦除引導(dǎo)程序

然后就是擦除uboot了,記得使用串口來擦除。


有幾點(diǎn)需要注意

由于編譯服務(wù)器還沒有創(chuàng)建,所以我把自己編譯好的文件放網(wǎng)上了,你可以下載。

文件路徑根據(jù)你自己的實(shí)際路徑,下載下來后存放的位置。

COM口根據(jù)你之前設(shè)備管理器看到的那個(gè)CH340口選擇。

確保頂部選中的芯片是3518ev300。

傳輸方式選擇串口。

按分區(qū)燒寫。

器件類型spi nor。

開始地址0,長(zhǎng)度1M。

點(diǎn)擊擦除后10秒內(nèi)拔插usb電源線接口(即接4個(gè)針腳的那個(gè)usb口,小的那個(gè)usb頭),讓板子重啟。

很快就能看到擦除成功的提示。


燒錄系統(tǒng)


主要注意如下幾點(diǎn):

使用usb口燒錄(不是串口)。

現(xiàn)在需要燒錄4個(gè)文件(通過右側(cè)綠色+可以添加文件)。

每個(gè)文件的名稱,器件類型,地址,長(zhǎng)度要填寫正確。

最后點(diǎn)擊燒寫。

然后等待燒寫成功。


如果你的燒寫不成功,請(qǐng)檢查之前的usb驅(qū)動(dòng)是否已安裝。

登錄開發(fā)板

鴻蒙系統(tǒng)燒錄好以后,就可以進(jìn)去看一下鴻蒙系統(tǒng)的模樣了。

雙擊MobaXterm_Personal_20.2.exe. 也可以用你自己喜歡的終端工具

然后點(diǎn)擊Session, 在彈出的窗口中填好相關(guān)字段


點(diǎn)擊OK以后,會(huì)進(jìn)入下面這個(gè)界面。


這里是uboot程序的界面,還沒有進(jìn)入鴻蒙OS,原因是uboot此時(shí)不知道鴻蒙OS的啟動(dòng)地址。

然后我們?cè)O(shè)置啟動(dòng)地址

設(shè)置OS啟動(dòng)地址

setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";

setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";

保存配置

saveenv

然后重啟


然后,很快就可以看到鴻蒙OS起來了。


如果你沒有看到OHOS#字樣,請(qǐng)按下幾次enter鍵。接下來,我們手動(dòng)運(yùn)行一個(gè)鴻蒙的程序。

運(yùn)行可執(zhí)行程序

進(jìn)入bin目錄,運(yùn)行writer程序(這個(gè)程序是我新增的,如果你的開發(fā)板上沒有,你可以運(yùn)行./camera_app程序)。


創(chuàng)建編譯服務(wù)器

為了省去搭建編譯環(huán)境的繁瑣,本次將一個(gè)已經(jīng)搭建好的編譯服務(wù)器制作成鏡像。我們只需要使用這個(gè)鏡像即可獲得編譯環(huán)境。

鏡像文件比較大(超過8G),請(qǐng)直接找老師獲取,也可以去前言提到的地方下載(建議晚上睡覺時(shí)下載)。

本次使用的Ubuntu是不帶桌面環(huán)境的。內(nèi)部已經(jīng)安裝好HarmonyOS的編譯環(huán)境,并且安裝了samba文件共享工具。方便windows訪問。

請(qǐng)先安裝VMWARE WorkStation軟件

然后打開它, 選擇 文件-->打開



然后開始了服務(wù)器創(chuàng)建過程,這個(gè)過程比較漫長(zhǎng),請(qǐng)保持耐心。

訪問服務(wù)器

服務(wù)器創(chuàng)建完成后。然后我們對(duì)它進(jìn)行上電啟動(dòng)


等待服務(wù)器開機(jī)。1分鐘內(nèi)一般就能正常起來。這個(gè)過程中,注意保持網(wǎng)線插入,因?yàn)樘摂M機(jī)和PC之間是通過有線網(wǎng)卡橋接的。啟機(jī)過程有軟件會(huì)探測(cè)網(wǎng)絡(luò)是否在,否則會(huì)很慢。

當(dāng)屏幕輸出變慢后,我們就可以訪問它了,當(dāng)然也可以在黑窗口里面直接鍵入各種命令,不過不方便。


把鼠標(biāo)放入黑窗口,點(diǎn)擊以后,鼠標(biāo)焦點(diǎn)就進(jìn)入黑窗口了,讓焦點(diǎn)退出來的方法是按CTRL+g。

如果想在黑窗口操作linux相關(guān)命令,則鍵入用戶名compile 密碼compile。

一般我們不在黑窗口操作。

我們需要如下2種方法來訪問虛擬機(jī):

  • 通過ssh訪問,即可以遠(yuǎn)程登錄虛擬機(jī)的shell,并執(zhí)行命令。
  • 通過文件共享訪問,可以在windows上查看和修改虛擬機(jī)中的文件。

注意:

當(dāng)前創(chuàng)建的虛擬機(jī)采用的是橋接模式,它的IP地址為192.168.2.20。你需要確保虛擬機(jī)中的IP地址和自己PC的IP地址在同一個(gè)網(wǎng)段。(最簡(jiǎn)單的方法是在自己的網(wǎng)卡上添加一個(gè)192.168.2.X網(wǎng)段的IP地址)。Windows添加IP地址的方法請(qǐng)自行查閱。

如果多臺(tái)編譯服務(wù)器在同一個(gè)局域網(wǎng)絡(luò),那么IP地址會(huì)沖突,因?yàn)槎际?92.168.2.20。所以,需要對(duì)地址進(jìn)行修改。

SSH訪問


點(diǎn)擊OK以后,就登錄到了編譯服務(wù)器的shell。


文件共享訪問

為了從Windows訪問編譯服務(wù)器上的源代碼和編譯出的目標(biāo)文件,在編譯服務(wù)器上已經(jīng)安裝好了samba文件共享服務(wù),只需要在windows這邊映射網(wǎng)絡(luò)驅(qū)動(dòng)器即可。按如下方法操作。


右鍵點(diǎn)擊 計(jì)算機(jī) ,選擇映射網(wǎng)絡(luò)驅(qū)動(dòng)器。


然后就可以在windows看到編譯服務(wù)器上的內(nèi)容了。

現(xiàn)在開始,你就可以像操作windows的文件一樣來操作編譯服務(wù)器里面的文件了(比如通過Visual Studio來修改服務(wù)器上的C/C++代碼文件)。

編譯產(chǎn)品

整個(gè)工程是存放在~/harmonyos/openharmony目錄,得先進(jìn)入這個(gè)目錄。

然后執(zhí)行python腳本來編譯產(chǎn)品。如下紅色框即編譯整個(gè)產(chǎn)品。


特別提醒:

python build.py ipcamera_hi3518ev300 -b debug

編譯debug版本才會(huì)含有調(diào)試的shell,如果省略-b debug,無法通過shell命令行執(zhí)行命令。

大約需要10多分鐘完成產(chǎn)品編譯,編譯成功后,結(jié)果如下。


然后在windows文件夾下可以看到編譯出來的結(jié)果。


每次系統(tǒng)燒錄時(shí),將上述3個(gè)文件以及uboot文件(Z:\vendor\hisi\hi35xx\hi3518ev300\uboot\out\boot\u-boot-hi3518ev300.bin)

拷貝到windows某個(gè)目錄下(比如我的例子中的D:\BIN),然后用HiTool.exe來燒錄。

更新源碼

鴻蒙系統(tǒng)目前更新比較頻繁,如果需要獲取最新版本,請(qǐng)執(zhí)行下面的命令更新源碼。

這里有一個(gè)問題:編譯服務(wù)器預(yù)設(shè)的192.168.2.20無法上網(wǎng)。這個(gè)時(shí)候你可以再添加1個(gè)IP地址(添加可以上網(wǎng)的IP地址)。然后再執(zhí)行下面2條命令

cd ~/harmonyos/openharmony

repo sync -c

。。。待貼圖。。。

編譯組件

編譯完整產(chǎn)品比較耗時(shí),大多數(shù)時(shí)候我們修改的代碼較少,只需要編譯指定的組件就行了。

由-T指定編譯一個(gè)已經(jīng)存在的組件,只編譯一個(gè)小組件,速度飛快。


注意,編譯組件的時(shí)候 -T 后面的路徑需要使用全路徑。如何確定-T后面的參數(shù)?請(qǐng)看下圖:

文本編輯器(如notepad++)打開build/lite/product/ ipcamera_hi3518ev300.json文件


這個(gè)組件涉及的代碼文件是哪些呢,繼續(xù)看對(duì)應(yīng)目錄的BUILD.gn文件,對(duì)于此例子為//applications/sample/camera/app


生成的程序在下面這個(gè)目錄


打通網(wǎng)絡(luò)

設(shè)備本身沒有以太口,只有wifi接口。但默認(rèn)情況下wifi是無法工作的。

輸入ifconfig你會(huì)看到wlan0接口IP地址為0。


需要做如下工作才能讓wifi正常運(yùn)行起來。

  • 配置SSID和密碼
  • 修改wpa_sample.c源碼
  • 配置自啟動(dòng)
  • 編譯系統(tǒng)

配置SSID和密碼

修改applications\sample\camera\communication\wpa_supplicant\config\ wpa_supplicant.conf。

修改后的內(nèi)容如下。這個(gè)文件的目的是配置wifi用戶名和密碼。

  1. country=GB 
  2.  
  3. ctrl_interface=udp 
  4.  
  5. network={ 
  6.  
  7.         ssid="teacher" 
  8.  
  9.         psk="12345678qwe" 
  10.  
  11.     } 

 注意

  • =號(hào)2端不要留空格。
  • ssid和psk按你自己的實(shí)際進(jìn)行配置,比如你手機(jī)熱點(diǎn)的網(wǎng)絡(luò)名和密碼。

修改源碼

修改applications\sample\camera\communication\wpa_supplicant\src\wpa_sample.c源代碼。

只修改main函數(shù)部分。這個(gè)程序的目的是讀取wifi用戶名和密碼配置文件,并進(jìn)行wifi連接。

  1. int main(int argc, char *argv[]) 
  2.  
  3.  
  4. g_wpaArgc = argc; 
  5.  
  6. for (int i = 0; i < g_wpaArgc; i++) { 
  7.  
  8. g_wpaArg[i] = argv[i]; 
  9.  
  10.  
  11. g_wpaArgc=5; 
  12.  
  13. g_wpaArg[1] = "-i"
  14.  
  15. g_wpaArg[2]="wlan0"
  16.  
  17. g_wpaArg[3]="-c"
  18.  
  19. g_wpaArg[4]="/etc/wpa_supplicant.conf"
  20.  
  21. int ret = pthread_create(&g_wpaThread, NULL, ThreadMain, NULL); 
  22.  
  23. if (ret != 0) { 
  24.  
  25. printf("[WpaSample]create thread failed error:%s.\n", strerror(ret)); 
  26.  
  27. return 1; 
  28.  
  29.  
  30. pthread_join(g_wpaThread, NULL); 
  31.  
  32. return 0; 
  33.  

 配置自啟動(dòng)

剛才修改的main會(huì)生成一個(gè)可執(zhí)行程序,這個(gè)程序我們需要把它配置在啟動(dòng)腳本中,這樣每次板子重啟都會(huì)運(yùn)行這個(gè)程序。

修改文件vendor\huawei\camera\init_configs\ init_liteos_a_3518ev300.cfg 。 紅色部分為新增。

  1.  
  2. "jobs" : [{ 
  3.  
  4. "name" : "pre-init"
  5.  
  6. "cmds" : [ 
  7.  
  8. "mkdir /storage/data/log"
  9.  
  10. "chmod 0755 /storage/data/log"
  11.  
  12. "chown 4 4 /storage/data/log"
  13.  
  14. "mkdir /storage/data/softbus"
  15.  
  16. "chmod 0700 /storage/data/softbus"
  17.  
  18. "chown 7 7 /storage/data/softbus"
  19.  
  20. "mkdir /sdcard"
  21.  
  22. "chmod 0777 /sdcard"
  23.  
  24. "mount vfat /dev/mmcblk0 /sdcard rw,umask=000"
  25.  
  26. "mount vfat /dev/mmcblk1 /sdcard rw,umask=000" 
  27.  
  28.  
  29. }, { 
  30.  
  31. "name" : "init"
  32.  
  33. "cmds" : [ 
  34.  
  35. "start shell"
  36.  
  37. "start apphilogcat"
  38.  
  39. "start foundation"
  40.  
  41. "start bundle_daemon"
  42.  
  43. "start media_server"
  44.  
  45. "start appspawn"
  46.  
  47. "start wpa_supplicant" 
  48.  
  49.  
  50. }, { 
  51.  
  52. "name" : "post-init"
  53.  
  54. "cmds" : [ 
  55.  
  56. "chown 0 99 /dev/dev_mgr"
  57.  
  58. "chown 0 99 /dev/hdfwifi"
  59.  
  60. "chown 0 99 /dev/gpio"
  61.  
  62. "chown 0 99 /dev/i2c-0"
  63.  
  64. "chown 0 99 /dev/i2c-1"
  65.  
  66. "chown 0 99 /dev/i2c-2"
  67.  
  68. "chown 0 99 /dev/uartdev-0"
  69.  
  70. "chown 0 99 /dev/uartdev-1"
  71.  
  72. "chown 0 99 /dev/uartdev-2"
  73.  
  74. "chown 0 99 /dev/spidev0.0"
  75.  
  76. "chown 0 99 /dev/spidev1.0"
  77.  
  78. "chown 0 99 /dev/spidev1.1" 
  79.  
  80.  
  81.  
  82. ], 
  83.  
  84. "services" : [{ 
  85.  
  86. "name" : "foundation"
  87.  
  88. "path" : "/bin/foundation"
  89.  
  90. "uid" : 7, 
  91.  
  92. "gid" : 7, 
  93.  
  94. "once" : 0, 
  95.  
  96. "importance" : 1, 
  97.  
  98. "caps" : [10, 11, 12, 13] 
  99.  
  100. }, { 
  101.  
  102. "name" : "shell"
  103.  
  104. "path" : "/bin/shell"
  105.  
  106. "uid" : 2, 
  107.  
  108. "gid" : 2, 
  109.  
  110. "once" : 0, 
  111.  
  112. "importance" : 0, 
  113.  
  114. "caps" : [4294967295] 
  115.  
  116. }, { 
  117.  
  118. "name" : "appspawn"
  119.  
  120. "path" : "/bin/appspawn"
  121.  
  122. "uid" : 1, 
  123.  
  124. "gid" : 1, 
  125.  
  126. "once" : 0, 
  127.  
  128. "importance" : 0, 
  129.  
  130. "caps" : [2, 6, 7, 8, 23] 
  131.  
  132. }, { 
  133.  
  134. "name" : "apphilogcat"
  135.  
  136. "path" : "/bin/apphilogcat"
  137.  
  138. "uid" : 4, 
  139.  
  140. "gid" : 4, 
  141.  
  142. "once" : 1, 
  143.  
  144. "importance" : 0, 
  145.  
  146. "caps" : [] 
  147.  
  148. }, { 
  149.  
  150. "name" : "media_server"
  151.  
  152. "path" : "/bin/media_server"
  153.  
  154. "uid" : 5, 
  155.  
  156. "gid" : 5, 
  157.  
  158. "once" : 1, 
  159.  
  160. "importance" : 0, 
  161.  
  162. "caps" : [] 
  163.  
  164. }, { 
  165.  
  166. "name" : "wms_server"
  167.  
  168. "path" : "/bin/wms_server"
  169.  
  170. "uid" : 6, 
  171.  
  172. "gid" : 6, 
  173.  
  174. "once" : 1, 
  175.  
  176. "importance" : 0, 
  177.  
  178. "caps" : [] 
  179.  
  180. }, { 
  181.  
  182. "name" : "bundle_daemon"
  183.  
  184. "path" : "/bin/bundle_daemon"
  185.  
  186. "uid" : 8, 
  187.  
  188. "gid" : 8, 
  189.  
  190. "once" : 0, 
  191.  
  192. "importance" : 0, 
  193.  
  194. "caps" : [0, 1] 
  195.  
  196. },{ 
  197.  
  198. "name""wpa_supplicant"
  199.  
  200. "path""/bin/wpa_supplicant"
  201.  
  202. "uid" : 0, 
  203.  
  204. "gid" : 0, 
  205.  
  206. "once" : 1, 
  207.  
  208. "importance" : 0, 
  209.  
  210. "caps": [] 
  211.  
  212.  
  213.  

 編譯系統(tǒng)

此時(shí)我們配置好了wifi用戶名和密碼,也修改了wifi啟動(dòng)程序并設(shè)置好了啟動(dòng)腳本。接下來我們把這些修改編譯到系統(tǒng)中,然后再燒錄到板子上。

當(dāng)完整編譯系統(tǒng),燒錄好以后,新版本的系統(tǒng)起來以后,我們可以看到wlan0 的接口的IP地址正常獲取到了。


部署NFS

當(dāng)網(wǎng)絡(luò)打通以后,我們就可以部署NFS(網(wǎng)絡(luò)文件系統(tǒng))了。部署NFS最大的好處是,可以將windows的某個(gè)文件夾當(dāng)成開發(fā)板上的文件夾來使用,這樣,不需要把編譯的程序手動(dòng)拷貝到開發(fā)板去,就可以執(zhí)行編譯出來的程序。

主要分為如下3個(gè)過程:

  1. 安裝NFS Server
  2. 配置和啟動(dòng)Server
  3. 掛載NFS

安裝NFS

在PC上安裝NFS服務(wù)器。雙擊nfs1169.exe進(jìn)行安裝,同常規(guī)軟件安裝方法。

配置NFS

安裝好以后,就是配置了,這一步稍微麻煩。首先需要以管理員身份運(yùn)行NFS服務(wù)器。

開始-->所有程序-->haneWIN軟件-->NFS-->NFS服務(wù)器(右鍵點(diǎn)擊)--選擇(以管理員身份運(yùn)行)。


編輯輸出表文件。如下。


然后保存。

然后我們配置防火墻,使得NFS相關(guān)的網(wǎng)絡(luò)通信暢通。先看需要放行哪些端口。


需要放行的端口有: 111, 1058, 2049. TCP和UDP都需要。

然后我們配置放行這些端口(即允許這些端口的流量通過)。

控制面板\系統(tǒng)和安全\Windows 防火墻。

 



確保規(guī)則已配置好。然后重啟防火墻(關(guān)閉防火墻,再打開防火墻)。


重啟NFS

開始---所有程序---haneWIN軟件---NFS---重啟所有服務(wù)(以管理員身份運(yùn)行)。

掛載NFS

在開發(fā)板shell界面,掛載NFS。

先確保開發(fā)板和PC之間能互通(可以從PC ping開發(fā)板)。我的開發(fā)板和PC都通過wifi連接手機(jī)熱點(diǎn),所以在一個(gè)網(wǎng)段,能互相ping通。

然后開發(fā)板上面執(zhí)行下面的命令。


除了IP地址調(diào)整成你PC的地址,其它信息照抄。掛載成功會(huì)顯示finished如紅框所示。

然后我們就可以執(zhí)行windows上的程序了。


在我的機(jī)器上,上述文件存放在d:\BIN目錄。因?yàn)檫@個(gè)目錄我配置成了NFS Server的根目錄。

所以,能從開發(fā)板上看到并運(yùn)行它們。

上述這些內(nèi)容,是通過從編譯服務(wù)器拷貝出來的。如何拷貝,請(qǐng)參閱訪問虛擬機(jī)章節(jié)。

添加組件

如果我們要新增程序怎么處理。請(qǐng)仿照范例中的camer_app處理。具體如下,比如我新增了一個(gè)reader程序,一個(gè)writer程序。以下描述reader的添加邏輯。

在applications\sample\camera目錄下,將app目錄復(fù)制一份,改名為reader。


然后修改reader里面的文件。先修改BUILD.gn:


然后源碼根據(jù)自己的實(shí)際情況修改。

最后修改編譯腳本build\lite\product\ ipcamera_hi3518ev300.json。

添加紅框中的一行,然后按組件編譯方式編譯就可以了。


編譯好的程序在out\ipcamera_hi3518ev300\bin目錄下。

©著作權(quán)歸作者和HarmonyOS技術(shù)社區(qū)共同所有,如需轉(zhuǎn)載,請(qǐng)注明出處,否則將追究法律責(zé)任

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2021-02-26 11:54:38

MyBatis 插件接口

2011-03-25 12:45:49

Oracle SOA

2018-10-10 15:14:20

Linux虛擬機(jī)配置

2024-04-02 08:58:13

2024-03-05 18:27:43

2010-07-06 09:38:51

搭建私有云

2010-07-06 09:43:57

搭建私有云

2022-01-04 08:52:14

博客網(wǎng)站Linux 系統(tǒng)開源

2017-07-19 17:00:22

PHPPHP程序員消息隊(duì)列

2020-06-01 16:25:43

WindowsLinux命令

2021-07-14 09:00:00

JavaFX開發(fā)應(yīng)用

2021-11-24 16:02:57

鴻蒙HarmonyOS應(yīng)用

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2021-08-03 11:52:49

模擬器開發(fā)嵌入式

2010-01-20 10:44:01

linux DHCP服務(wù)器

2025-02-26 07:40:25

運(yùn)營分析體系運(yùn)營策略

2023-06-05 13:07:38

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)