android开发脚本之几个常用脚本sh

android开发几个常用的开发脚本,其实非常简单,我们参考下面二个文档。但是,我打算直接简化,特别是对于只有一行命令的脚本,直接命令化,这样更方便使用。

1 打印Debug日志信息

该脚本打印了包含崩溃,异常,dalvikvm信息,严格模式和网页CONSOLE等信息。

#!/bin/sh
#Explanations:
# System.err to grep stacktrace information of catched exceptions
#AndroidRuntime to grep stacktrace information of uncaughted runtime exceptions
#MessageQueue to grep exceptions happended during MessageQueue
#CONSOLE to grep console message releated with javascript console.info
#dalvikvm informations about dalvik vm
#StrictMode information about StrictMode warnings
adb logcat |grep --color=always -E "System.err|AndroidRuntime|MessageQueue|CONSOLE|W/Bundle|dalvikvm|StrictMode"

其实就一行命令,我们直接简化如下来使用:

adb logcat |grep -E  "System.err|AndroidRuntime|MessageQueue|CONSOLE|W/Bundle|dalvikvm|StrictMode"

2 打印某个应用的日志

参考http://blog.csdn.net/hfreeman2008/article/details/51737790

#!/bin/bash
PackageName=$1

#PackageName=com.example.appinfomanagertinno
pid="$(adb shell ps | grep $PackageName | awk '{print $2}')"

echo "PackageName-----"
echo "$PackageName"

echo "-----------------------------------------"
echo "-----------------------------------------"

echo "pid-----"
echo "$pid"

echo "-----------------------------------------"
echo "-----------------------------------------"

adb logcat | grep $pid

脚本使用方法

./log_package.sh 包名

比名,我们要打印包com.example.appinfomanagertinno

./log_package.sh com.example.appinfomanagertinno

3 快速打开应用详情页

使用这个,我们可以快速的打开应用详情界面,快速完成卸载,强制停止,清除缓存,数据等操作

#!/bin/sh 
adb shell am start  -a "android.settings.APPLICATION_DETAILS_SETTINGS" -d "package:$1"

使用如下:

./clearAppData.sh com.droidyue.akoi

4. 专门为Android优化的全文查找方法

gfindx.sh

grep  -E $1 --exclude-dir={.git,lib,.gradle,.idea,build,captures} --exclude={*.png,*.jpg,*.jar}  . -R --color=always -n

上面的脚本,排除了.git,lib,.gradle,.idea等文件夹下的文件,也排除了类似png,jpg,jar等文件的查找,大大加快了查找效率。

其实这个,我们可以用此命令来替换,非常方便使用:

grep -rnwi --exclude-dir={.git,lib,.gradle,.idea,captures,out,prebuilts} --exclude={*.png,*.jpg,*.jar,*.so}   "ro.hwui.texture_cache_size" ./

5.查看当前的Activity

adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp' --color=always

其实我们也可以用下面这个命令来实现:

adb shell dumpsys activity | grep mFocusedActivity

参考资料

(1)http://www.androidchina.net/4878.html
快速提高Android开发的脚本与技巧(终端篇)
(2)https://github.com/androidyue/DroidScripts
开发脚本

你可能感兴趣的:(Android开发,脚本)