chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何實(shí)現(xiàn)OpenHarmony的OTA升級(jí)

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

掃碼添加小助手

加入工程師交流群

開(kāi)源項(xiàng)目 OpenHarmony是每個(gè)人的 OpenHarmony 2e000974-a7b8-11ed-bfe3-dac502259ad0.png

黃騰坤

誠(chéng)邁科技驅(qū)動(dòng)開(kāi)發(fā)工程師

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

萬(wàn)帆

誠(chéng)邁科技應(yīng)用開(kāi)發(fā)工程師

OTA簡(jiǎn)介

隨著設(shè)備系統(tǒng)日新月異,用戶如何及時(shí)獲取系統(tǒng)的更新,體驗(yàn)新版本帶來(lái)的新的體驗(yàn),以及提升系統(tǒng)的穩(wěn)定性和安全性成為了每個(gè)廠商都面臨的嚴(yán)峻問(wèn)題。OTA(Over the Air)提供對(duì)設(shè)備遠(yuǎn)程升級(jí)的能力。升級(jí)子系統(tǒng)對(duì)用戶屏蔽了底層芯片的差異,對(duì)外提供了統(tǒng)一的升級(jí)接口?;诮涌谶M(jìn)行二次開(kāi)發(fā)后,可以讓廠商的設(shè)備(如IP攝像頭等)輕松支持遠(yuǎn)程升級(jí)能力。

OTA升級(jí)包類型

升級(jí)包常見(jiàn)有3種類型,主要包括:全量升級(jí)包、差分升級(jí)包以及變分區(qū)升級(jí)包。 2ec43376-a7b8-11ed-bfe3-dac502259ad0.png ? ?全量升級(jí)包:升級(jí)包中只包括鏡像全量升級(jí)相關(guān)數(shù)據(jù),用于鏡像全量升級(jí); ?差分升級(jí)包:升級(jí)包中只包括鏡像差分升級(jí)相關(guān)數(shù)據(jù),用于鏡像差分升級(jí); ?變分區(qū)升:升級(jí)包中包括分區(qū)表、鏡像全量數(shù)據(jù),用于變分區(qū)處理和變分區(qū)后的鏡像恢復(fù)。 ?

適用范圍

OpenAtom OpenHarmony(簡(jiǎn)稱“OpenHarmony”) 3.1 Release不支持富設(shè)備升級(jí),本章節(jié)所有實(shí)例在OpenHarmony 3.2 Beta3上驗(yàn)證,升級(jí)方式為全量升級(jí),所用開(kāi)發(fā)板為誠(chéng)邁科技基于RK3568設(shè)計(jì)的HCPAD-100開(kāi)發(fā)板以及OpenHarmony主干使用的DAYU200開(kāi)發(fā)板??墒褂肏CPAD-100開(kāi)發(fā)板或DAYU200開(kāi)發(fā)板驗(yàn)證,patch已提供,其他開(kāi)發(fā)板可能存在差異,請(qǐng)自行驗(yàn)證。

OTA升級(jí)步驟

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


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

需要權(quán)限:

ohos.permission.UPDATE_SYSTEM和ohos.permission.INTERNET,系統(tǒng)權(quán)限需要使用FULL_SDK.

4.1 獲取在線升級(jí)對(duì)象

//調(diào)用方包名,若在設(shè)置中插入升級(jí),可添加為設(shè)置應(yīng)用的包名
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 獲取升級(jí)任務(wù)信息
page.data.updater.getTaskInfo().then(taskInfo => {  //...});//返回任務(wù)信息對(duì)象
4.2.2 檢查新版本信息
page.data.updater.checkNewVersion().then(data => {
  //...
});//返回搜包結(jié)果對(duì)象
2f611452-a7b8-11ed-bfe3-dac502259ad0.png ? 4.2.3 獲取新版本信息
page.data.updater.getNewVersionInfo().then(data => {
  //...
});//返回新版本信息對(duì)象
2f78aa4a-a7b8-11ed-bfe3-dac502259ad0.png ? 4.3 版本下載 調(diào)用download(versionDigestInfo, downloadOptions) 下載新版本。
let versionDigestInfo = {
  versionDigest: "versionDigest" // 檢測(cè)結(jié)果中的版本摘要信息
};
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 安裝新版本 調(diào)用upgrade(versionDigestInfo, upgradeOptions),安裝新版本,開(kāi)發(fā)板會(huì)重啟進(jìn)入系統(tǒng)升級(jí)頁(yè)面,待系統(tǒng)升級(jí)完成。
clickInstall: function () {
  if (page.data.pageType == "downSuccess") { // 下載成功,開(kāi)始升級(jí)
    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 ? 進(jìn)入updater模式,升級(jí)過(guò)程中會(huì)提示“正在更新 請(qǐng)勿重啟”。 ?30b4f9e0-a7b8-11ed-bfe3-dac502259ad0.jpg ? 升級(jí)完成后頁(yè)面會(huì)提示“升級(jí)完成”,之后重啟。 ?30cab4b0-a7b8-11ed-bfe3-dac502259ad0.jpg ? 升級(jí)完成后,再次校驗(yàn)當(dāng)前版本信息,提示當(dāng)前已是最新版本。 ?30e97256-a7b8-11ed-bfe3-dac502259ad0.png ?

OTA升級(jí)調(diào)試

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

總結(jié)

OpenHarmony OTA升級(jí)主要是搭建搜包服務(wù)器,制作升級(jí)包,了解OTA下載包管理,包解析,包管理的代碼邏輯。同時(shí),對(duì)于常見(jiàn)問(wèn)題知道如何快速定位!

參考鏈接

升級(jí)客戶端應(yīng)用、服務(wù)器源碼

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

參考文獻(xiàn)

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


原文標(biāo)題:如何實(shí)現(xiàn)OpenHarmony的OTA升級(jí)

文章出處:【微信公眾號(hào):OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2741

    瀏覽量

    45058
  • OpenHarmony
    +關(guān)注

    關(guān)注

    31

    文章

    3891

    瀏覽量

    20299

原文標(biāo)題:如何實(shí)現(xiàn)OpenHarmony的OTA升級(jí)

文章出處:【微信號(hào):gh_e4f28cfa3159,微信公眾號(hào):OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用RTT的維護(hù)云進(jìn)行遠(yuǎn)程固件升級(jí)OTA),怎么沒(méi)有網(wǎng)絡(luò)升級(jí)的方式?

    使用RTT的維護(hù)云進(jìn)行遠(yuǎn)程固件升級(jí)OTA),怎么沒(méi)有網(wǎng)絡(luò)升級(jí)的方式的?只有藍(lán)牙,近距離的固件升級(jí)。詳細(xì)如圖所示,只有藍(lán)牙,沒(méi)有連接互聯(lián)網(wǎng),通過(guò)固件上傳服務(wù)器進(jìn)行在線
    發(fā)表于 10-13 06:36

    OTA采用ymodem_ota升級(jí)app分區(qū)出現(xiàn)CRC校驗(yàn)錯(cuò)誤是怎么回事?

    芯片:STM32F103VET6 環(huán)境:MDK5 使用的相關(guān)軟件包:ota_downloader; 如上圖,使用官方例程,BOOT運(yùn)行起來(lái)之后,發(fā)現(xiàn)APP區(qū)CRC校驗(yàn)不對(duì),但是會(huì)強(qiáng)制升級(jí),并且
    發(fā)表于 09-10 06:57

    使用EC200N-CN注冊(cè)netdev,無(wú)法實(shí)現(xiàn)OTA升級(jí)怎么解決?

    is 0! [I/at.dev.ec200x] OTA UPDATE OK 我的單片機(jī)是STM32F407VGT6,我也確實(shí)有使用以太網(wǎng)原來(lái),目前把LAN都給禁用了,沒(méi)有初始化了,ifconfig命令也可以看到?jīng)]有以太網(wǎng)了,但是就是無(wú)法執(zhí)行升級(jí)指令,請(qǐng)問(wèn)有人能幫忙解答一
    發(fā)表于 08-15 07:14

    技術(shù)筆記 | Ubuntu 系統(tǒng) OTA 升級(jí)全流程詳解

    前言:在嵌入式系統(tǒng)設(shè)備管理中,OTA(Over-The-Air)升級(jí)實(shí)現(xiàn)設(shè)備遠(yuǎn)程維護(hù)、功能迭代的核心能力。本文基于Ubuntu系統(tǒng)環(huán)境,詳細(xì)拆解updateEngine工具的OTA
    的頭像 發(fā)表于 07-31 08:32 ?566次閱讀
    技術(shù)筆記 | Ubuntu 系統(tǒng) <b class='flag-5'>OTA</b> <b class='flag-5'>升級(jí)</b>全流程詳解

    藍(lán)牙空中升級(jí)(OTA)原理

    1. 概述 所謂DFU(Device Firmware Update),就是設(shè)備固件升級(jí)的意思,而OTA(Over The Air)是實(shí)現(xiàn)DFU的一種方式而已,準(zhǔn)確說(shuō),OTA的全稱應(yīng)該
    發(fā)表于 07-21 14:50

    東風(fēng)日產(chǎn)N7開(kāi)啟首次OTA升級(jí)

    近日,東風(fēng)日產(chǎn)舉辦“NI好 N7首次OTA升級(jí)發(fā)布會(huì)”,并宣布OTA升級(jí)即日開(kāi)啟推送。
    的頭像 發(fā)表于 07-05 13:57 ?797次閱讀

    詳解藍(lán)牙空中升級(jí)(OTA)原理與步驟

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

    瑞薩電子MCU無(wú)感OTA升級(jí)功能介紹

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

    有沒(méi)有大神使用cubeMX生成初始代碼開(kāi)發(fā)實(shí)現(xiàn)通過(guò)USB(HID)進(jìn)行OTA升級(jí)功能的?

    求助,有沒(méi)有大神使用cubeMX生成初始代碼開(kāi)發(fā)實(shí)現(xiàn)通過(guò)USB(HID)進(jìn)行OTA升級(jí)功能的
    發(fā)表于 04-22 13:35

    RK3568開(kāi)發(fā)板OTA升級(jí)

    OTA(Over-The-Air)升級(jí)作為一種無(wú)損失的系統(tǒng)升級(jí)方式,能夠遠(yuǎn)程將新功能部署到產(chǎn)品上,極大地提高了設(shè)備的可維護(hù)性和可擴(kuò)展性。除了通過(guò)網(wǎng)絡(luò)直接下載OTA
    的頭像 發(fā)表于 04-21 14:32 ?1076次閱讀
    RK3568開(kāi)發(fā)板<b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b>

    一文解鎖OTA遠(yuǎn)程升級(jí)方案!基于RK3562全國(guó)產(chǎn)平臺(tái)

    在設(shè)備維護(hù)成本高、用戶體驗(yàn)難提升的雙重難題下,OTA(Over-the-Air)空間下載技術(shù)的出現(xiàn),無(wú)疑成為破解困境的“金鑰匙”,它是一種通過(guò)無(wú)線網(wǎng)絡(luò)實(shí)現(xiàn)設(shè)備遠(yuǎn)程升級(jí)的技術(shù),全程數(shù)據(jù)無(wú)損。OT
    的頭像 發(fā)表于 04-07 10:15 ?836次閱讀
    一文解鎖<b class='flag-5'>OTA</b>遠(yuǎn)程<b class='flag-5'>升級(jí)</b>方案!基于RK3562全國(guó)產(chǎn)平臺(tái)

    淺談車規(guī)MCU (MGEQ1C064) OTA升級(jí)

    OTA升級(jí)。 OTA升級(jí)方式 為了實(shí)現(xiàn)OTA升級(jí)
    發(fā)表于 03-04 12:52

    OTA軟件升級(jí)管理系統(tǒng)

    OTA(Over-the-Air Technology,空中下載技術(shù))是通過(guò)空中下載的方式對(duì)車輛中的軟件進(jìn)行遠(yuǎn)程升級(jí)。經(jīng)緯恒潤(rùn)OTA軟件升級(jí)管理系統(tǒng)基于軟件架構(gòu)、應(yīng)用架構(gòu)、業(yè)務(wù)架構(gòu)和技
    的頭像 發(fā)表于 01-13 09:39 ?1512次閱讀
    <b class='flag-5'>OTA</b>軟件<b class='flag-5'>升級(jí)</b>管理系統(tǒng)

    比亞迪仰望U8迎來(lái)重磅OTA升級(jí)

    近日,仰望U8 迎來(lái)重磅OTA,仰望U8豪華版迎來(lái)V2.1.0 OTA大版本升級(jí),實(shí)現(xiàn)了19項(xiàng)功能新增,16項(xiàng)功能優(yōu)化;仰望U8越野玩家版迎來(lái)OTA
    的頭像 發(fā)表于 12-26 14:37 ?1119次閱讀

    OTA升級(jí)】無(wú)需數(shù)據(jù)線,一條命令即可完成固件升級(jí)!

    OTA無(wú)線升級(jí)過(guò)程視頻演示:OTA介紹OTA(Over-The-Air,空中升級(jí))是一種通過(guò)無(wú)線通信技術(shù)
    的頭像 發(fā)表于 12-11 01:00 ?4978次閱讀
    【<b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b>】無(wú)需數(shù)據(jù)線,一條命令即可完成固件<b class='flag-5'>升級(jí)</b>!