命令:
$ cd ${MY_ANDROID} $ source build/envsetup.sh $ lunch evk_8mm-userdebug $ ./imx-make.sh bootloader kernel -j4 $ make otapackage -j4
然后你会在以下路径找到full ota的包。
${MY_ANDROID}/out/target/product/evk_8mm/evk_8mm-ota-**.zip
将image烧写进去,不包括full ota的包。
将full ota的包丢进板子的文件系统中,现在开始执行full ota。
adb push payload.bin /data/ota_package
执行update_engine_client命令
update_engine_client --payload=file:///data/ota_package/payload.bin --update \ --headers="FILE_HASH=TT00vk5kiMvwz35A9UqgihgcRCS/UJwvueWiz/QIpbQ= FILE_SIZE=536752574 METADATA_HASH=3rN/LK38ETwUjreGvkYfTF5Vm9/mg1ue5g3Y82xCEiU= METADATA_SIZE=53975"
差分包过程类似,不同的是使用的是使用make target-files-package -j4命令分别构建两次target-files-package,每次构建的target-files-package位于
${MY_ANDROID}/out/target/product/evk_8mm/obj/PACKAGING/target_files_intermediates/evk_8mm-ota-**.zip
做差分包:
$ out/host/linux-x86/bin/ota_from_target_files -i PREVIOUS-target_files.zip NEWtarget_files.zip incremental-ota.zip