====== 工作中用到的一些脚本 ======
由于办公室用的是colinux,生成的东西都要通过samba共享出来,有时候目录太深,拷贝文件很不方便,于是就写了几个小脚本来自动拷贝文件.
还有一些其它乱七八糟的脚本.
====== mymake.sh ======
用来快速编译单个AP,并将生成的APK拷贝到指定的目录下面,需要放到android工程根目录下.
root@ubuntu:/ice/android# cat mymake.sh
#!/bin/bash
#echo "make Browser && cp out/target/product/generic/system/app/Browser.apk /ice/targetimg/"
#make Browser && cp out/target/product/generic/system/app/Browser.apk /ice/targetimg/
START_AT=`date`
ROOT_DIR=/ice/android
TARGET=generic
#TARGET=msm7627_ffa
TARGET_DEST=/ice/targetimg/${TARGET}
IMAGE_DIR=${ROOT_DIR}/out/target/product/${TARGET}
mkdir -p ${TARGET_DEST}
FRAMEWORK_DIR=${ROOT_DIR}/out/target/product/${TARGET}/system/framework/
OUT_DIR=${ROOT_DIR}/out/target/product/${TARGET}/system/app
if [ ${#} != 1 ];then
echo "USAGE:${0} module_name"
echo "example: ${0} Browser"
echo "Then Browser.apk will be copied to ${TARGET_DEST}"
exit 0
fi
echo "Now start make ${1}"
. build/envsetup.sh
make ${1}
if [ ${1} = "framework" -o ${1} = "core" ];then
echo "cp ${FRAMEWORK_DIR}/${1}.jar ${TARGET_DEST}/"
cp ${FRAMEWORK_DIR}/${1}.jar ${TARGET_DEST}/
elif [ ${1} = "snod" ];then
echo "cp ${IMAGE_DIR}/system.img ${TARGET_DEST}/"
cp ${IMAGE_DIR}/system.img ${TARGET_DEST}/
else
echo "cp ${OUT_DIR}/${1}.apk ${TARGET_DEST}/"
cp ${OUT_DIR}/${1}.apk ${TARGET_DEST}/
fi
#out/target/product/generic/system/framework/core.jar
END_AT=`date`
echo "START AT:${START_AT}"
echo "Finished AT:${END_AT}"
====== makedalvik.sh ======
编译dalvik目录,并调用mymake.sh直接打包system.img(make snod)
root@ubuntu:~/shell# cat makedalvik.sh
#!/bin/bash
echo "Make dalvik for Target,and will run make snod to package the system.img"
echo ". build/envsetup.sh"
source build/envsetup.sh
echo "choosecombo Device release msm7627_ffa eng"
choosecombo Device release msm7627_ffa eng
echo "cd dalvik"
cd dalvik
echo "mm"
mm
echo "cd .."
cd ..
echo "./mymake snod"
./mymake.sh snod
====== mybuild.sh ======
用来编译整个工程的,拷贝生成的image到指定目录
root@ubuntu:/ice/android/build# cat mybuild.sh
#!/bin/sh
START=`date`
EMU_SOURCEDIR=/ice/android/out/target/product/generic
TARGET_SOURCEDIR=/ice/android/out/target/product/msm7627_ffa
EMU_DESTDIR=/ice/targetimg/emulator/
TARGET_DESTDIR=/ice/targetimg/target/
mkdir -p ${EMU_DESTDIR}
mkdir -p ${TARGET_DESTDIR}
[ -e ${TARGET_DESTDIR}download.sh ] || { echo "cp /root/shell/download.sh/ ${TARGET_DESTDIR};"; cp /root/shell/download.sh ${TARGET_DESTDIR}; }
#./build.sh ${1}
if [ ${1} = "target" ]; then
echo "cp ${TARGET_SOURCEDIR}/boot.img ${TARGET_DESTDIR} "
cp ${TARGET_SOURCEDIR}/boot.img ${TARGET_DESTDIR}
echo "cp ${TARGET_SOURCEDIR}/system.img ${TARGET_DESTDIR} "
cp ${TARGET_SOURCEDIR}/system.img ${TARGET_DESTDIR}
echo "cp ${TARGET_SOURCEDIR}/userdata.img ${TARGET_DESTDIR} "
cp ${TARGET_SOURCEDIR}/userdata.img ${TARGET_DESTDIR}
echo "cp ${TARGET_SOURCEDIR}/system/app/Browser.apk ${TARGET_DESTDIR}"
cp ${TARGET_SOURCEDIR}/system/app/Browser.apk ${TARGET_DESTDIR}
elif [ ${1} = "emulator" ];then
echo "cp ${EMU_SOURCEDIR}/boot.img ${EMU_DESTDIR} "
cp ${EMU_SOURCEDIR}/boot.img ${EMU_DESTDIR}
echo "cp ${EMU_SOURCEDIR}/system.img ${EMU_DESTDIR} "
cp ${EMU_SOURCEDIR}/system.img ${EMU_DESTDIR}
echo "cp ${EMU_SOURCEDIR}/userdata.img ${EMU_DESTDIR} "
cp ${EMU_SOURCEDIR}/userdata.img ${EMU_DESTDIR}
echo "cp ${EMU_SOURCEDIR}/system/app/Browser.apk ${EMU_DESTDIR}"
cp ${EMU_SOURCEDIR}/system/app/Browser.apk ${EMU_DESTDIR}
else
echo "Nothing to copy"
fi
END=`date`
echo "Start at ${START}"
echo "finished at ${END}"
====== getpnglist.sh ======
用来查找drawable png图片在哪些java文件里面用到的脚本
root@ubuntu:~/shell# cat getpnglist.sh
#!/bin/sh
#Author:pengjianqing@gmail.com
#Date:2010/02/03
#Description:
#Use the shell to find the resource file and where the resource file is used
#the default file is png
#Example:
#cd /ice
#./getpnglist.sh Browser
#
START_AT=`date`
APP_NAME=${1}
APP_DIR=android/packages/apps
RES_DIR=res
FILE_TYPE=png
echo "Get the ${APP_NAME} png list in the resource directory"
echo "*************************************************************"
echo "Create the ${APP_NAME}_${FILE_TYPE}_list.txt"
ls ${APP_DIR}/${APP_NAME}/${RES_DIR}/*/*.${FILE_TYPE}|grep -v hdpi >${APP_NAME}_${FILE_TYPE}_list.txt
echo "*************************************************************"
FILE_LIST=`ls ${APP_DIR}/${APP_NAME}/${RES_DIR}/*/*.${FILE_TYPE}|grep -v hdpi`
echo "Create the ${APP_NAME}_${FILE_TYPE}_WhereUsed_list.txt"
echo ${RESULT}>${APP_NAME}_${FILE_TYPE}_WhereUsed_list.txt
echo "*************************************************************"
for i in `echo ${FILE_LIST}`:
do
echo "*************************************************************" >>${APP_NAME}_${FILE_TYPE}_WhereUsed_list.txt
FILENAME=`echo ${i}|cut -d "/" -f7|cut -d "." -f1`
echo "Filename:${FILENAME}" >>${APP_NAME}_${FILE_TYPE}_WhereUsed_list.txt
#grep -i -R -n ${FILENAME} ${APP_DIR}/${APP_NAME} -d ${APP_DIR}/${APP_NAME}/.git/
RESULT=`grep -i -R -n ${FILENAME} ${APP_DIR}/${APP_NAME}/src ${APP_DIR}/${APP_NAME}/res`
echo "${RESULT}"
echo ${RESULT}>>${APP_NAME}_${FILE_TYPE}_WhereUsed_list.txt
echo "*************************************************************"
done
echo "*************************************************************"
END_AT=`date`
echo "Start at:${START_AT}"
echo "Finished at:${END_AT}"
echo "done."