国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Android OTA差分包制作(RK平臺)

這篇具有很好參考價值的文章主要介紹了Android OTA差分包制作(RK平臺)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、步驟說明

1. 編譯兩個新舊版本,需要用到兩個版本的rk3566_r-target_files-eng.zip文件。

2. 將兩個版本的rockdev/Image-rk3566_r/rk3566_r-target_files-eng.zip拷貝到某個制作空間下,建議文件命名帶上型號及版本號,方便維護,如:

rk3566_r-target_files-XXModel-V3.0.0.zip

rk3566_r-target_files-XXModel-V3.0.1.zip

3. 在源碼目錄下執(zhí)行source和 launch操作。

4. 使用源碼中ota_from_target_files腳本制作差分包:

./build/tools/releasetools/ota_from_target_files -p out/host/linux-x86 -k build/target/product/security/testkey -i version_low.zip version_high.zip ota_version_low_to_version_high.zip

參數(shù)含義:

-p:執(zhí)行腳本所需的依賴庫路徑

-k:指定系統(tǒng)所使用的簽名

注:

1.以上兩個參數(shù)必須帶上,否則會報錯;

2.會依賴 out/host/linux-x86目錄下的相關(guān)資源。

不同平臺估計有差異,以實際為準(zhǔn)。

二、示例

1. 拷貝版本到制作空間

cp /data/version/rk3566_r11/Image-rk3566_r_83372e_1123/rk3566_r-target_files-eng.zip ota_diff_space/rk3566_r-target_XXX_V3.0.0.zip

cp rkcode_sdk11.0_r11/rockdev/Image-rk3566_r/rk3566_r-target_files-eng.zip ota_diff_space/rk3566_r-target_XXX_V3.0.1.zip

2. 進到源碼根目錄,先執(zhí)行source和lunch

source build/envsetup.sh

lunch 51

3. 執(zhí)行差分包制作命令:

KVM:/data/workspace/RK_3566_USER_R11/rkcode_sdk11.0_r11$ ./build/tools/releasetools/ota_from_target_files -p out/host/linux-x86 -k build/target/product/security/testkey -i ../ota_diff_space/rk3566_r-target_XXX_V3.0.0.zip ../ota_diff_space/rk3566_r-target_XXX_V3.0.1.zip ../ota_diff_space/rk3566_r_ota_XXX_V3.0.0_to_V3.0.1.zip 2022-12-02 10:12:31 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:12:31 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:25 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:25 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:25 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:25 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop 2022-12-02 10:15:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop 2022-12-02 10:15:43 - ota_from_target_files - WARNING : Duplicate block difference found. Device specific block diff for partition 'system_ext' overrides the one in generic script. 2022-12-02 10:15:43 - ota_from_target_files - WARNING : Duplicate block difference found. Device specific block diff for partition 'product' overrides the one in generic script. 2022-12-02 10:15:43 - ota_from_target_files - WARNING : Duplicate block difference found. Device specific block diff for partition 'odm' overrides the one in generic script. trust unchanged; skipping vbmeta unchanged; skipping dtbo unchanged; skipping write uboot now... charge unchanged; skipping resource unchanged; skipping warning: rk loader bin missing from target; not flashing loader warning: rk loader bin missing from source; not flashing loader loader unchanged; skipping vendor_boot unchanged; skipping logo unchanged; skipping

三、錯誤記錄

其中-p參數(shù)沒有配置上的話,將會出現(xiàn)如下錯誤:

2022-11-29 19:50:02 - ota_from_target_files.py - ERROR : ERROR: Traceback (most recent call last): File "../../../build/tools/releasetools/ota_from_target_files.py", line 2258, in <module> main(sys.argv[1:]) File "../../../build/tools/releasetools/ota_from_target_files.py", line 2237, in main source_file=OPTIONS.incremental_source) File "../../../build/tools/releasetools/ota_from_target_files.py", line 1992, in GenerateNonAbOtaPackage output_file) File "../../../build/tools/releasetools/ota_from_target_files.py", line 1616, in WriteBlockIncrementalOTAPackage FinalizeMetadata(metadata, staging_file, output_file, needed_property_files) File "../../../build/tools/releasetools/ota_from_target_files.py", line 1328, in FinalizeMetadata prelim_signing = ComputeAllPropertyFiles(input_file, needed_property_files) File "../../../build/tools/releasetools/ota_from_target_files.py", line 1314, in ComputeAllPropertyFiles SignOutput(input_file, prelim_signing) File "../../../build/tools/releasetools/ota_from_target_files.py", line 492, in SignOutput whole_file=True) File "/data/workspace/RK_3566_USER_R11/rkcode_sdk11.0_r11/build/make/tools/releasetools/common.py", line 1854, in SignFile proc.returncode, stdoutdata)) ExternalError: Failed to run signapk.jar: return code 1: Exception in thread "main" java.lang.ExceptionInInitializerError at org.conscrypt.OpenSSLBIOInputStream.<init>(OpenSSLBIOInputStream.java:34) at org.conscrypt.OpenSSLX509Certificate.fromX509PemInputStream(OpenSSLX509Certificate.java:119) at org.conscrypt.OpenSSLX509CertificateFactory$1.fromX509PemInputStream(OpenSSLX509CertificateFactory.java:220) at org.conscrypt.OpenSSLX509CertificateFactory$1.fromX509PemInputStream(OpenSSLX509CertificateFactory.java:216) at org.conscrypt.OpenSSLX509CertificateFactory$Parser.generateItem(OpenSSLX509CertificateFactory.java:94) at org.conscrypt.OpenSSLX509CertificateFactory.engineGenerateCertificate(OpenSSLX509CertificateFactory.java:272) at java.base/java.security.cert.CertificateFactory.generateCertificate(CertificateFactory.java:355) at com.android.signapk.SignApk.readPublicKey(SignApk.java:184) at com.android.signapk.SignApk.main(SignApk.java:1007) Caused by: java.lang.IllegalArgumentException: Failed to load any of the given libraries: [conscrypt_openjdk_jni-linux-x86_64, conscrypt_openjdk_jni-linux-x86_64-fedora, conscrypt_openjdk_jni] at org.conscrypt.NativeLibraryLoader.loadFirstAvailable(NativeLibraryLoader.java:160) at org.conscrypt.NativeCryptoJni.init(NativeCryptoJni.java:49) at org.conscrypt.NativeCrypto.<clinit>(NativeCrypto.java:53) ... 9 more

四、參考

RK3326平臺Android9.0OTA差分包制作_abner.Li的博客-CSDN博客_android ota差分包制作文章來源地址http://www.zghlxwxcb.cn/news/detail-426872.html

到了這里,關(guān)于Android OTA差分包制作(RK平臺)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • OTA編譯報Exception in thread “main“ java.lang.UnsupportedClassVersionError: com/android/signapk/SignApk

    OTA編譯報Exception in thread “main“ java.lang.UnsupportedClassVersionError: com/android/signapk/SignApk

    ? ? ? ? 預(yù)置條件:已編譯出2個版本的target包; ? ? ? ? 問題引入:項目需要本地驗證當(dāng)前項目是否可以編譯出OTA差分包和全量包,并通過差分包和全量包成功完成測試機系統(tǒng)版本升級(這里重點討論編譯差分包過程中遇到的問題) ? ? ? ? 問題描述:使用ota腳本編譯OTA報錯

    2024年02月12日
    瀏覽(18)
  • RK3568平臺開發(fā)系列講解(驅(qū)動基礎(chǔ)篇)V4L2 用戶空間 API 說明

    RK3568平臺開發(fā)系列講解(驅(qū)動基礎(chǔ)篇)V4L2 用戶空間 API 說明

    ??返回專欄總目錄 沉淀、分享、成長,讓自己和他人都能有所收獲!?? ??設(shè)備驅(qū)動的主要目的是控制和利用底層硬件,同時向用戶展示功能。 這些用戶可以是在用戶空間或其他內(nèi)核驅(qū)動中運行的應(yīng)用。 本篇我們將學(xué)習(xí)如何利用內(nèi)核公開的 V4L2 設(shè)備功能。 我們將從描述和

    2023年04月25日
    瀏覽(24)
  • RK3588平臺開發(fā)系列講解(嵌入式AI篇)嵌入式AI的學(xué)習(xí)步驟

    RK3588平臺開發(fā)系列講解(嵌入式AI篇)嵌入式AI的學(xué)習(xí)步驟

    沉淀、分享、成長,讓自己和他人都能有所收獲!?? ?? 本篇將給大家介紹什么是嵌入式AI。

    2024年02月04日
    瀏覽(32)
  • 云平臺下ESB產(chǎn)品開發(fā)步驟說明

    云平臺下ESB產(chǎn)品開發(fā)步驟說明

    隨著互聯(lián)網(wǎng)、云計算技術(shù)的深入發(fā)展,為降低企業(yè)大規(guī)模云應(yīng)用建設(shè)的難度和成本,支持云應(yīng)用開發(fā)、運行與運維一體化的云應(yīng)用平臺軟件應(yīng)運而生。 云應(yīng)用平臺軟件,是支持云計算技術(shù)下業(yè)務(wù)應(yīng)用軟件建設(shè)的軟件基礎(chǔ)平臺 ,主要幫助企業(yè)實現(xiàn)應(yīng)用軟件云化、統(tǒng)一云應(yīng)用架

    2024年02月16日
    瀏覽(23)
  • RK3568平臺 Android13 GKI架構(gòu)開發(fā)方式

    RK3568平臺 Android13 GKI架構(gòu)開發(fā)方式

    GKI:Generic Kernel Image 通用內(nèi)核映像。 Android13 GMS和EDLA認(rèn)證的一個難點是google強制要求要支持GKI。GKI通用內(nèi)核映像,是google為了解決內(nèi)核碎片化的問題,而設(shè)計的通過提供統(tǒng)一核心內(nèi)核并將SoC和板級驅(qū)動從核心內(nèi)核移至可加載模塊中。核心內(nèi)核為驅(qū)動模塊提供了穩(wěn)定的內(nèi)核模塊

    2024年02月04日
    瀏覽(26)
  • Android 項目編譯 Gradle 配置說明

    Android 項目編譯 Gradle 配置說明

    ??Android 的Gradle版本更新?lián)Q代還是很快的,更新?lián)Q代除了功能上變得強大之外,還會出現(xiàn)很多意料之外的Bug,而很多開發(fā)者會被折磨的死去活來,下面我們來看有哪些編譯配置。 ??首先要知道什么時候會進行編譯,有以下幾種情況: 創(chuàng)建新項目。 打開老項目。 打開別人

    2024年02月09日
    瀏覽(17)
  • RK3588平臺開發(fā)系列講解(安卓篇)Android12 獲取 root 權(quán)限

    RK3588平臺開發(fā)系列講解(安卓篇)Android12 獲取 root 權(quán)限

    沉淀、分享、成長,讓自己和他人都能有所收獲!?? ??獲取 Android 設(shè)備的 root 權(quán)限是指取得超級用戶( root 用戶)的權(quán)限,使得用戶可以對系統(tǒng)進行更廣泛的修改和操作。但需要注意,獲取 root 權(quán)限可能會導(dǎo)致安全風(fēng)險,包括系統(tǒng)不穩(wěn)定、數(shù)據(jù)丟失或設(shè)備損壞,因此應(yīng)該謹(jǐn)

    2024年02月03日
    瀏覽(209)
  • RK3588平臺開發(fā)系列講解(USB篇)Linux Android USB軟件架構(gòu)

    RK3588平臺開發(fā)系列講解(USB篇)Linux Android USB軟件架構(gòu)

    平臺 內(nèi)核版本 安卓版本 RK3588 Linux 5.10 Android 12

    2024年02月09日
    瀏覽(24)
  • RK3568平臺開發(fā)系列講解(環(huán)境篇)10min帶你獲取、了解與編譯U-Boot源代碼
  • Webrtc android的編譯步驟

    Webrtc android的編譯步驟

    首先下載depot_tools 按官方教程來 https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up 這步驟操作完后會產(chǎn)生這兩個目錄 首先運行下一些相關(guān)依賴 Generate projects using GN. Make sure your current working directory is src/ of your workspace. Then run: You can

    2024年02月09日
    瀏覽(13)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包