十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
1. 編譯兩個(gè)新舊版本,需要用到兩個(gè)版本的rk3566_r-target_files-eng.zip文件。
2. 將兩個(gè)版本的rockdev/Image-rk3566_r/rk3566_r-target_files-eng.zip拷貝到某個(gè)制作空間下,建議文件命名帶上型號(hào)及版本號(hào),方便維護(hù),如:
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.以上兩個(gè)參數(shù)必須帶上,否則會(huì)報(bào)錯(cuò);
2.會(huì)依賴 out/host/linux-x86目錄下的相關(guān)資源。
不同平臺(tái)估計(jì)有差異,以實(shí)際為準(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. 進(jìn)到源碼根目錄,先執(zhí)行source和lunch
source build/envsetup.sh
lunch 51
3. 執(zhí)行差分包制作命令:
三、錯(cuò)誤記錄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ù)沒有配置上的話,將會(huì)出現(xiàn)如下錯(cuò)誤:
四、參考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
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. (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. (NativeCrypto.java:53) ... 9 more
RK3326平臺(tái)Android9.0OTA差分包制作_abner.Li的博客-博客_android ota差分包制作
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧