国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何實現OpenHarmony的OTA升級

OpenAtom OpenHarmony ? 來源:未知 ? 2023-02-08 22:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開源項目 OpenHarmony是每個人的 OpenHarmony 2e000974-a7b8-11ed-bfe3-dac502259ad0.png

黃騰坤

誠邁科技驅動開發工程師

2e8fe8a0-a7b8-11ed-bfe3-dac502259ad0.png

萬帆

誠邁科技應用開發工程師

OTA簡介

隨著設備系統日新月異,用戶如何及時獲取系統的更新,體驗新版本帶來的新的體驗,以及提升系統的穩定性和安全性成為了每個廠商都面臨的嚴峻問題。OTA(Over the Air)提供對設備遠程升級的能力。升級子系統對用戶屏蔽了底層芯片的差異,對外提供了統一的升級接口。基于接口進行二次開發后,可以讓廠商的設備(如IP攝像頭等)輕松支持遠程升級能力。

OTA升級包類型

升級包常見有3種類型,主要包括:全量升級包、差分升級包以及變分區升級包。 2ec43376-a7b8-11ed-bfe3-dac502259ad0.png ? ?全量升級包:升級包中只包括鏡像全量升級相關數據,用于鏡像全量升級; ?差分升級包:升級包中只包括鏡像差分升級相關數據,用于鏡像差分升級; ?變分區升:升級包中包括分區表、鏡像全量數據,用于變分區處理和變分區后的鏡像恢復。 ?

適用范圍

OpenAtom OpenHarmony(簡稱“OpenHarmony”) 3.1 Release不支持富設備升級,本章節所有實例在OpenHarmony 3.2 Beta3上驗證,升級方式為全量升級,所用開發板為誠邁科技基于RK3568設計的HCPAD-100開發板以及OpenHarmony主干使用的DAYU200開發板。可使用HCPAD-100開發板或DAYU200開發板驗證,patch已提供,其他開發板可能存在差異,請自行驗證。

OTA升級步驟

2ee1f848-a7b8-11ed-bfe3-dac502259ad0.png ?1.制作升級包(update_packaging_tools需切換至master分支) 1.1 創建目標版本(target_package)文件夾,文件格式如下: 2f2b64d8-a7b8-11ed-bfe3-dac502259ad0.png ? 1.2 將待升級的組件,包括鏡像文件(例如:system.img)等放入目標版本文件夾的根目錄下,代替上文結構中的{component_N}部分。 1.3 填寫“updater_config”文件夾中的組件配置文件。 1.3.1 配置“updater_config”文件夾中當前升級包支持的產品list:BOARD.list。
RK3568
1.3.2 配置“updater_config”文件夾中當前升級包所支持的版本范圍:VERSION.mbn。 版本名稱格式:RK3568 QP1A.XXXXXX.{大版本號(6位)}.XXX{小版本號(3位)}。例如:RK3568 QP1A.190711.020。名稱中“190711”為大版本號,“020”為小版本號。 配置例如下:
RK3568 QP1A.190711.001
1.4 創建“OTA.tag文件”,內容為OTA升級包的魔數,固定如下: package_type:ota1234567890qwertw //可選 1.5 updater_binary二進制文件 updater_binary該文件為系統編譯自動生成,路徑: out/rk3568/packages/phone/updater/bin/updater_binary 1.6 updater_specified_config.xml配置


    
head info OTA.tag vendor.img system.img 1.7 執行升級包制作命令 python build_update.py ./target_package/ ./output_package/ -pk ./rsa_private_key2048.pem ?./target_package/:指定target_package路徑。 ?./output_package/:指定升級包輸出路徑。 ?-pk ./rsa_private_key3072.pem:指定私鑰文件路徑。 ?此處可以使用系統自帶的證書:device/board/hisilicon/hispark_taurus/linux/updater/config/rsa_private_key2048.pem注:OpenHarmony 3.2 Beta3分支上base/update/packaging_tools倉制作updater升級包校驗有BUG,會失敗。開發者已經在master分支上修復,制作升級包前請同步master上最新代碼。 2.配置服務器 搭建搜包服務器(OTA搜包服務器采用OpenSSL協議傳輸數據,所以必須使用HTTPS解析),服務器源碼見附件sslserver目錄。 3.配置網絡 3.1 配置客戶端服務器信息 為了方便調試,我們提供了本地可配置文件修改方案(patch見附件)。服務器搭建完成后,只需要在開發板配置服務地址,搜包地址,端口號等信息即可完成搜包,下載等功能。 配置路徑:/system/etc/serverInfo.json
{
    "serverIp": "115.126.57.xx", //服務器ip
    "serverSearch": "115.126.57.xx", //搜包服務器
    "serverPort":9556  //端口號
}
3.2 OpenHarmony 3.2 Beta3分支默認route路由是關閉的,只要先打開route才能連接外網。搜包前先要替換toybox文件,配置好的toybox已在附件中提供,直接通過hdc_std file send toybox(路徑) /system/bin/ 替換即可。 3.3 導入signing_cert.crt證書 hdc_std file send signing_cert.crt(路徑) /data/ota_package 3.4 配置路由地址 hdc_std shell route add default gw 10.51.11.1 dev eth1 //10.51.11.1是網關地址,根據實際情況配置,如果不知道如何查看網關,請聯系你們的網絡管理員。 ping www.huawei.com //ping確認是否可以聯網 2f4d000c-a7b8-11ed-bfe3-dac502259ad0.png ? 3.4 為了方便觀察效果,可通過hdc_std shell power-shell setmode 602命令,將屏幕設置為常亮。 ?4. 升級客服端代碼實例

需要權限:

ohos.permission.UPDATE_SYSTEM和ohos.permission.INTERNET,系統權限需要使用FULL_SDK.

4.1 獲取在線升級對象

//調用方包名,若在設置中插入升級,可添加為設置應用的包名
const PACKAGE_NAME = "com.ohos.ota.updateclient";
let upgradeInfo = {
  upgradeApp: PACKAGE_NAME,
  businessType: {
    vendor: "HZOS",
    subType: 1
  }
}
page.data.updater=client.getOnlineUpdater(upgradeInfo);
4.2 獲取版本信息 4.2.1 獲取升級任務信息
page.data.updater.getTaskInfo().then(taskInfo => {  //...});//返回任務信息對象
4.2.2 檢查新版本信息
page.data.updater.checkNewVersion().then(data => {
  //...
});//返回搜包結果對象
2f611452-a7b8-11ed-bfe3-dac502259ad0.png ? 4.2.3 獲取新版本信息
page.data.updater.getNewVersionInfo().then(data => {
  //...
});//返回新版本信息對象
2f78aa4a-a7b8-11ed-bfe3-dac502259ad0.png ? 4.3 版本下載 調用download(versionDigestInfo, downloadOptions) 下載新版本。
let versionDigestInfo = {
  versionDigest: "versionDigest" // 檢測結果中的版本摘要信息
};
let downloadOptions = {
  allowNetwork: 1,
  order: 1
}
page.data.updater.download(versionDigestInfo, downloadOptions).then(result => {
  console.info(TAG + "updater download result: " + JSON.stringify(result));
}).catch(error => {
  console.error(TAG + "updater download error: " + JSON.stringify(error));
});
30125726-a7b8-11ed-bfe3-dac502259ad0.png ? 4.4 安裝新版本 調用upgrade(versionDigestInfo, upgradeOptions),安裝新版本,開發板會重啟進入系統升級頁面,待系統升級完成。
clickInstall: function () {
  if (page.data.pageType == "downSuccess") { // 下載成功,開始升級
    page.upgrade();
  }
},
upgrade() {
  if (page.data.updater == undefined) {
    //...
    return;
  }
  page.data.updater.on(eventClassifyInfo, eventInfo => {
    console.info(TAG + "upgrade eventInfo: " + JSON.stringify(eventInfo));
    //...
  });
  let upgradeOptions = {
    order: 2 //安裝
  }
  page.data.updater.upgrade(versionDigestInfo, upgradeOptions).then(result => {
    console.info(TAG + "upgrade result: " + JSON.stringify(result));
  }).catch(error => {
    console.error(TAG + "upgrade error: " + JSON.stringify(error));
  });
}
302da936-a7b8-11ed-bfe3-dac502259ad0.png ? 進入updater模式,升級過程中會提示“正在更新 請勿重啟”。 ?30b4f9e0-a7b8-11ed-bfe3-dac502259ad0.jpg ? 升級完成后頁面會提示“升級完成”,之后重啟。 ?30cab4b0-a7b8-11ed-bfe3-dac502259ad0.jpg ? 升級完成后,再次校驗當前版本信息,提示當前已是最新版本。 ?30e97256-a7b8-11ed-bfe3-dac502259ad0.png ?

OTA升級調試

正常模式:在該路徑下data/updater/log獲取updater_log、updater_stage_log、error_code.log三份日志文件。 updater模式:在該路徑下tmp/獲取updater.log、updater_stage.log、error_code.log三份日志文件。 updater.log搜索關鍵字fail即可快速定位問題。 31171daa-a7b8-11ed-bfe3-dac502259ad0.png ?

總結

OpenHarmony OTA升級主要是搭建搜包服務器,制作升級包,了解OTA下載包管理,包解析,包管理的代碼邏輯。同時,對于常見問題知道如何快速定位!

參考鏈接

升級客戶端應用、服務器源碼

https://gitee.com/wanfan_yyds/upgrade3.2

基于OpenHarmony 3.2 Beta3分支源碼的patch

https://gitee.com/wanfan_yyds/update_updateservice/commit/44e28bb1d8d84b200348c5ad03f9f4ce3bad3e1e

https://gitee.com/wanfan_yyds/update_updater/commit/0fe02cec5b21bd3f9a47c4e5a0fd0e5790088703

參考文獻

https://docs.openharmony.cn/pages/v3.2Beta/zh-cn/application-dev/reference/apis/js-apis-update.md/

https://gitee.com/openharmony/update_updater

https://gitee.com/openharmony/update_updateservice

https://gitee.com/openharmony/update_update_app

https://gitee.com/openharmony/update_packaging_tools


原文標題:如何實現OpenHarmony的OTA升級

文章出處:【微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 鴻蒙
    +關注

    關注

    60

    文章

    2963

    瀏覽量

    45883
  • OpenHarmony
    +關注

    關注

    33

    文章

    3952

    瀏覽量

    21096

原文標題:如何實現OpenHarmony的OTA升級

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    一文吃透RK平臺OTA升級開發:從邏輯到調試的完整指南

    在 Rockchip(簡稱 RK)Android 平臺開發中,OTA(Over The Air)升級實現設備軟件迭代的核心方式。無論是本地卡刷升級,還是在線無縫更新,掌握
    的頭像 發表于 02-09 16:26 ?321次閱讀
    一文吃透RK平臺<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>開發:從邏輯到調試的完整指南

    RK平臺Android設備OTA升級教程:從原理到U盤實操

    OTA(Over-The-Air)升級是 Android 系統標準的軟件更新方式,在 RK(瑞芯微)平臺上,OTA 升級不僅支持本地升級(如
    的頭像 發表于 02-09 16:23 ?760次閱讀
    RK平臺Android設備<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>教程:從原理到U盤實操

    一般想要實現OTA的話使用藍牙升級好還是4G這種方式實現升級

    一般想要實現OTA的話,使用藍牙升級好還是4G這種方式實現升級
    發表于 12-09 06:01

    碩博電子OTA遠程升級平臺#OTA#碩博電子#OTA升級

    OTA
    長沙碩博電子科技股份有限公司
    發布于 :2025年10月29日 11:19:46

    使用RTT的維護云進行遠程固件升級OTA),怎么沒有網絡升級的方式?

    使用RTT的維護云進行遠程固件升級OTA),怎么沒有網絡升級的方式的?只有藍牙,近距離的固件升級。詳細如圖所示,只有藍牙,沒有連接互聯網,通過固件上傳服務器進行在線
    發表于 10-13 06:36

    OTA采用ymodem_ota升級app分區出現CRC校驗錯誤是怎么回事?

    芯片:STM32F103VET6 環境:MDK5 使用的相關軟件包:ota_downloader; 如上圖,使用官方例程,BOOT運行起來之后,發現APP區CRC校驗不對,但是會強制升級,并且
    發表于 09-10 06:57

    使用EC200N-CN注冊netdev,無法實現OTA升級怎么解決?

    is 0! [I/at.dev.ec200x] OTA UPDATE OK 我的單片機是STM32F407VGT6,我也確實有使用以太網原來,目前把LAN都給禁用了,沒有初始化了,ifconfig命令也可以看到沒有以太網了,但是就是無法執行升級指令,請問有人能幫忙解答一
    發表于 08-15 07:14

    技術筆記 | Ubuntu 系統 OTA 升級全流程詳解

    前言:在嵌入式系統設備管理中,OTA(Over-The-Air)升級實現設備遠程維護、功能迭代的核心能力。本文基于Ubuntu系統環境,詳細拆解updateEngine工具的OTA
    的頭像 發表于 07-31 08:32 ?1194次閱讀
    技術筆記 | Ubuntu 系統 <b class='flag-5'>OTA</b> <b class='flag-5'>升級</b>全流程詳解

    藍牙空中升級(OTA)原理

    1. 概述 所謂DFU(Device Firmware Update),就是設備固件升級的意思,而OTA(Over The Air)是實現DFU的一種方式而已,準確說,OTA的全稱應該
    發表于 07-21 14:50

    東風日產N7開啟首次OTA升級

    近日,東風日產舉辦“NI好 N7首次OTA升級發布會”,并宣布OTA升級即日開啟推送。
    的頭像 發表于 07-05 13:57 ?1191次閱讀

    詳解藍牙空中升級(OTA)原理與步驟

    如何實現Bluetooth LE OTA?什么叫DFU?如何通過UART實現固件升級?又如何通過USB實現固件
    的頭像 發表于 07-04 09:56 ?4543次閱讀
    詳解藍牙空中<b class='flag-5'>升級</b>(<b class='flag-5'>OTA</b>)原理與步驟

    瑞薩電子MCU無感OTA升級功能介紹

    “零感知”的升級體驗。本文以RX26T為例,拆解無感OTA實現思路、代碼框架與實測情況,幫助開發者在自家項目中快速落地。
    的頭像 發表于 05-15 14:36 ?1733次閱讀
    瑞薩電子MCU無感<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>功能介紹

    有沒有大神使用cubeMX生成初始代碼開發實現通過USB(HID)進行OTA升級功能的?

    求助,有沒有大神使用cubeMX生成初始代碼開發實現通過USB(HID)進行OTA升級功能的
    發表于 04-22 13:35

    RK3568開發板OTA升級

    OTA(Over-The-Air)升級作為一種無損失的系統升級方式,能夠遠程將新功能部署到產品上,極大地提高了設備的可維護性和可擴展性。除了通過網絡直接下載OTA
    的頭像 發表于 04-21 14:32 ?1553次閱讀
    RK3568開發板<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>

    一文解鎖OTA遠程升級方案!基于RK3562全國產平臺

    在設備維護成本高、用戶體驗難提升的雙重難題下,OTA(Over-the-Air)空間下載技術的出現,無疑成為破解困境的“金鑰匙”,它是一種通過無線網絡實現設備遠程升級的技術,全程數據無損。OT
    的頭像 發表于 04-07 10:15 ?1363次閱讀
    一文解鎖<b class='flag-5'>OTA</b>遠程<b class='flag-5'>升級</b>方案!基于RK3562全國產平臺