參考 鴻蒙官方文檔(點擊傳送門) ,做一下流程梳理簡化,及踩坑記錄
創(chuàng)新互聯(lián)建站專注于富川企業(yè)網(wǎng)站建設,響應式網(wǎng)站,商城系統(tǒng)網(wǎng)站開發(fā)。富川網(wǎng)站建設公司,為富川等地區(qū)提供建站服務。全流程按需定制開發(fā),專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務
華為將真機調(diào)試分成物理真機和遠程真機。這里說的都是物理真機(手機、平板)。鴻蒙真機調(diào)試巨復雜,不像Android那么容易方便。
貼一下官方的調(diào)試流程圖:
總結一下:
上面這個流程可以忽略,沒講到重點。真機調(diào)試是需要在 ? AppGallery Connect 中創(chuàng)建應用的,調(diào)試應用需要的cer和p7b文件是從這里生成的。
先決條件:
1. 鴻蒙手機通過USB連接電腦,并開啟USB調(diào)試。
2. 一個華為開發(fā)者賬號,實名認證
3. APP開發(fā)工具DevEco-Studio
關鍵流程:
1. Studio創(chuàng)建應用
2. 如果未登錄過,F(xiàn)ile Project Structure Project Signing Configs簽名配置頁,點擊“Sign In”
3. AppGallery創(chuàng)建應用(包名和Studio創(chuàng)建的一樣)
4. 官方文檔到這在簽名配置頁就點Try Again可以自動簽名,我試了不行,以下全是手動
5. Studio中Build Generate key and CSR? ?生成p12和csr文件
6. 獲取手機udid,命令行hdc shell bm get -udid(下一步設備管理要用)
7. AppGallery主頁 用戶與訪問 左側設備管理添加udid的設備(生成p7b時要用)
8. AppGallery主頁 用戶與訪問 左側證書管理生成cer文件(生成p7b和簽名配置要用)
9. AppGallery主頁 我的項目 左側HarmonyOS應用 HAP provision profile,生成p7b文件
10. 最后在簽名配置頁配好 p12、p7b、cer等參數(shù),運行鴻蒙應用到真機就行了
定位使用
位置能力用于確定用戶設備在哪里,系統(tǒng)使用位置坐標標示設備的位置。有GNSS定位、基站定位、WLAN/藍牙定位
GNSS定位包括GPS、GLONASS、北斗、Galileo等,通過導航衛(wèi)星,設備芯片提供的定位算法,來確定設備準確位置。定位過程具體使用哪些定位系統(tǒng),取決于用戶設備的硬件能力
位置能力作為系統(tǒng)為應用提供的一種基礎服務,需要應用在所使用的業(yè)務場景,向系統(tǒng)主動發(fā)起請求,并在業(yè)務場景結束時,主動結束此請求,在此過程中系統(tǒng)會將實時的定位結果上報給應用。
使用設備的位置能力,需要用戶進行確認并主動開啟位置開關。如果位置開關沒有開啟,系統(tǒng)不會向任何應用提供位置服務。
設備位置信息屬于用戶敏感數(shù)據(jù),所以即使用戶已經(jīng)開啟位置開關,應用在獲取設備位置前仍需向用戶申請位置訪問權限。在用戶確認允許后,系統(tǒng)才會向應用提供位置服務
之前測試過使用華為DevEco開發(fā)智能電視應用。前幾天華為發(fā)布了手機的測試版,不能免俗,抓緊嘗試一下。
手頭沒有華為手機測試系統(tǒng),現(xiàn)在試一下開發(fā)環(huán)境跑模擬器感受一下。
以前DevEco里是沒有手機選項的,現(xiàn)在該選項可以看到了:
這里測試一下Business Card Ability(Java)開發(fā)。
DevEco和Android Studio一樣基于開源的Idea版本開發(fā)的,其結構與安卓開發(fā)環(huán)境非常像,熟悉安卓的小伙伴應該能很快上手。
入口程序是一個MyApplication,從AbilityPackage繼承。
它首先找到了連接的榮耀手機,但這個手機不是鴻蒙系統(tǒng)。
編譯是成功了,但提示設備無法使用:
點擊Tools - HVD Manager
首先提示登陸華為賬號,登陸后,選擇一個模擬器運行:
啟動以后長這個樣:
點擊設置,先看看關于:
上面顯示大大的HarmonyOS。但感覺畫面很模糊,不知道模擬器到底是運行在本地的,還是云端的。但DevEco上顯示是Remote Device字樣。
鴻蒙OS版本號 2.0.0 Developer Beta1。
再點運行,在指定的模擬器上運行程序。
不過仍然運行失敗:
鴻蒙OS版本與平板是一致的,
程序終于跑起來了:
看起來安卓程序好像真能在鴻蒙直接運行,安裝一個快手試試:
還真能看:
我真分不清這是安卓還是鴻蒙了 。
開發(fā)前可以了解下鴻蒙: [鴻蒙開發(fā) 序]華為鴻蒙操作系統(tǒng)(HarmonyOS)簡介及開發(fā)環(huán)境搭建
開發(fā)前的準備:「鴻蒙開發(fā) 1」華為鴻蒙應用集成開發(fā)環(huán)境DevEco Studio安裝和設置
了解鴻蒙應用開發(fā)的基本開發(fā)流程:「鴻蒙開發(fā) 2」第一個華為鴻蒙(HarmonyOS)應用程序(App)
本章目標:
1 了解華為鴻蒙應用開發(fā)的可視化(低代碼)方式
2 通過構建一個簡單的具有頁面跳轉(zhuǎn)功能的應用
低代碼開發(fā)方式,即通過可視化界面開發(fā)方式快速構建布局、編輯UI界面,可有效降低用戶的上手成本并提升用戶構建UI界面的效率。
1 打開DevEco Studio,創(chuàng)建一個新工程,選擇支持Phone / Tablet / Wearable(手機 / 平板 / s可穿戴)的模板,我們在此直接選擇Empty Ability
Project name工程名稱填SuperVisual
Development mode開發(fā)方式選擇Super Visual
其它的可以使用默認設置,點擊完成,進入編輯界面
1 在Project(項目)窗口,刪除工程運行默認的入口文件夾:“entry src main js default pages index”文件夾
2 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標右鍵,選擇“New JS Visual”
JS visual name填first,點擊完成,進入編輯界面
創(chuàng)建完成后,可以看到“entry src main supervisual default pages page page.visual”的文件目錄結構
3 第一個頁面內(nèi)有一個容器、文本和一個按鈕,通過Div、Text和Button組件來實現(xiàn)
(1)分別選中first.visual畫面中的Text、Div組件,單擊鼠標右鍵,選擇Delete刪除
(2)選中UI Control中的Div組件,將其拖至畫布
點擊右側屬性樣式欄中的通用樣式圖標(General),設置Div組件的高度Height為100%,使其占滿屏幕
點擊右側屬性樣式欄中的樣式圖標(Flex),設置Div組件的FlexDirection樣式為column,使Div的主軸垂直;設置Div組件的JustifyContent樣式為center,使得其子組件在主軸上居中顯示;設置Div組件的AlignItems樣式為center,使得其子組件在交叉軸上居中顯示
(3)選中UI Control中的Text組件,將其拖至Div組件的中央?yún)^(qū)域
點擊右側屬性樣式欄中的屬性圖標(Properties),設置Text組件的Content屬性為 “ Hello World ”
點擊右側屬性樣式欄中的通用樣式圖標(General),設置Text組件的寬(width)為100%,高(height)為100px
點擊右側屬性樣式欄中的樣式圖標(Feature),設置組件的FontSize樣式為60px,使得其文字放大;設置組件的TextAlign樣式為center,使得組件文字居中顯示
(4)選中UI Control中的Button組件,將其拖至Text組件下面
點擊右側屬性樣式欄中的屬性圖標(Properties),設置Button組件的Value屬性為 “ Next ”,
點擊右側屬性樣式欄中的通用樣式圖標(General),設置按的寬(width)為40%,高(height)為60px
點擊右側屬性樣式欄中的樣式圖標(Feature),設置組件的FontSize樣式為40px
至此,第一個頁面創(chuàng)建完成
我們可以在預覽窗口中看效果,點擊右側邊欄的Preview打開預覽窗口
1 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標右鍵,選擇“New JS Visual”
Visual配置界面,JS visual name填second,回車(Enter鍵)或者點擊完成,進入編輯界面
2 第二個頁面中有一個容器和文本,通過Div、Text組件實現(xiàn),現(xiàn)在編輯器已經(jīng)為我們創(chuàng)建好了,我們就來修改下它們的屬性(你也可以刪除原有的自己創(chuàng)建,具體步驟參考本章第二節(jié)“二 創(chuàng)建第一個頁面”)。
選中Text組件,點擊右側屬性樣式欄中的屬性圖標(Properties),設置Text組件的Content屬性為 “ Hi,I'm always here. ”
點擊右側屬性樣式欄中的通用圖標(General),設置組件的寬(width)為100%,高為60px
點擊右側屬性樣式欄中的樣式圖標(Feature),設置組件的FontSize樣式為36px,TextAlign樣式為center
這樣我們的第二個頁面創(chuàng)建成功了
1 在Project窗口,打開工程中的“entry src main js default pages first first.js”, 導入router模塊,頁面路由router根據(jù)頁面的uri來找到目標頁面,從而實現(xiàn)跳轉(zhuǎn)。示例代碼如下:
2 打開或者切換到first.visual頁面,選中畫布上的Button組件,點擊右側屬性樣式欄中的事件圖標(Events),鼠標點擊Click事件的輸入框,選擇launch事件
3 在預覽窗口中查看項目效果,點擊Next按鈕后發(fā)現(xiàn)我們的頁面成功跳轉(zhuǎn)了。
到此,本章的目標就完成了。