介绍
平时我们编译源码apk的时候,需要adb push应该到指定文件夹下,需要先adb root ,adb remount ,然后push apk,odex,vdex到对应的文件夹下.像这种时候我们可以写个脚本快速完成
使用方法:
adbpush.sh -s serial_number file_parent_path
adbpush.sh file_parent_path
serial_number :序列号
file_parent_path:apk外层路径,如out/target/product/k210/system/priv-app/Settings
例子:
如果push setting apk
adbpush.sh out/target/product/k210/system/priv-app/Settings
具体脚本
#!/bin/sh
adb_options=" "
adb_file=" "
if [ "$1" = "-s" ]; then
adb_options=""$1" "$2""
adb_file=""$3""
else
adb_file=""$1""
fi
if [ "$adb_file" = "" ]; then
echo "file empty"
exit;
fi
apk=${adb_file##*app}
apk2=${apk:1}
apkdir=${adb_file##*system}
echo "adb $adb_options root"
echo "adb $adb_options remount"
echo "adb $adb_options push $adb_file/$apk2.apk system$apkdir/"
echo "adb $adb_options push $adb_file/oat/arm/$apk2.odex system$apkdir/oat/arm/"
echo "adb $adb_options push $adb_file/oat/arm/$apk2.vdex system$apkdir/oat/arm/"
adb $adb_options root
adb $adb_options remount
adb $adb_options push $adb_file/$apk2.apk system$apkdir/
adb $adb_options push $adb_file/oat/arm/$apk2.odex system$apkdir/oat/arm/
adb $adb_options push $adb_file/oat/arm/$apk2.vdex system$apkdir/oat/arm/
#adb reboot