命令:

$ 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