Android sdk中自帶了一些分析內存,界面調優的很是實用的工具,這對於分析和調試咱們的應用十分有幫助,因爲我使用的是linux版本的sdk,因此就以linux版本的工具作一個介紹,這些工具的具體位置在android-sdk-linux/tools/*目錄下面,目前整理的工具備以下幾種(因爲篇幅的緣由,可能須要兩篇來介紹):html
android核心工具,包括實現Android SDK Manager,AVD的全部功能,以及能夠經過它建立一個android工程等等,命令格式爲./android [global options] action [action options]能夠在tools目錄下輸入./android -h查看命令提示,以下:linux
caihaifei@hfcai:/opt/android-sdk-linux/tools$ ./android -h
Usage:
android [global options] action [action options]
Global options:
-s --silent : Silent mode, shows errors only.
-v --verbose : Verbose mode, shows errors, warnings and all messages.
--clear-cache: Clear the SDK Manager repository manifest cache.
-h --help : Help on a specific command.
Valid
actions
are
composed
of a verb
and an
optional
direct
object:
- sdk : Displays the SDK Manager window.
- avd : Displays the AVD Manager window.
- list : Lists existing targets or virtual devices.
- list avd : Lists existing Android Virtual Devices.
- list target : Lists existing targets.
- list device : Lists existing devices.
- list sdk : Lists remote SDK repository.
- create avd : Creates a new Android Virtual Device.
- move avd : Moves or renames an Android Virtual Device.
- delete avd : Deletes an Android Virtual Device.
- update avd : Updates an Android Virtual Device to match the folders
of a new SDK.
- create project : Creates a new Android project.
- update project : Updates an Android project (must already have an
AndroidManifest.xml).
- create test-project : Creates a new Android project for a test package.
- update test-project : Updates the Android project for a test package (must
already have an AndroidManifest.xml).
- create lib-project : Creates a new Android library project.
- update lib-project : Updates an Android library project (must already have
an AndroidManifest.xml).
- create uitest-project: Creates a new UI test project.
- update adb : Updates adb to support the USB devices declared in the
SDK add-ons.
- update sdk : Updates the SDK by suggesting new platforms to install
if available.
介紹幾個能夠經常使用的功能:android
$:./android -v sdk
$:./android -s delete avd -n test
Creates a new Android project.
Options:
-n --name : Project name. -a --activity : Name of the default Activity that is created. [required]
-k --package : Android package name for the application. [required] -v --gradle-version: Gradle Android plugin version. -t --target : Target ID of the new project. [required] -g --gradle : Use gradle template. -p --path : The new project's directory. [required]
如上,咱們能夠經過以下命令建立一個工程:shell
$:./android -n TestProject -a MainActivity -k com.hfcai.test -t 10 -p ~/Desktop/TestProject
該命令會建立一個非gradle工程,eclipse的標準目錄結構,若是須要建立一個gradle構建的android工程,命令以下:ruby
$:./android -n TestProject -a MainActivity -k com.hfcai.test -t 10 -v 3.1 -g ~/Desktop/TestProject
android更加詳細的命令介紹:https://developer.android.com/studio/tools/help/android.htmlmarkdown
Monitor(Android Device Monitor)和DDMS(Dalvik Debug Monitor Service). ddms和monitor是android debug monitor的替換工具,ddms已經被廢棄,可是你也能夠經過ddms命令將其調用出來,android studio上使用的是monitor,eclipse默認使用的是ddms的。monitor在調試程序過程當中常常被使用,須要比較詳細的瞭解它的使用。
monitor的簡介可參考:Android 監視器簡述app
製做.9 patch圖片的一個工具,9 patch圖片是一個自適應的png圖片,能夠實現背景圖片自適應而不失真,咱們能夠在tools文件下的draw9patch打開或者直接在Android Studio的res目錄下選擇一個png圖片右擊選擇Create 9-Patch file建立一個9-Patch文件並在左側繪圖區域製做,具體的製做過程能夠參考一篇博文,他是根據android 文檔原文翻譯,寫的很清楚:博客,也能夠直接參考android文檔:Draw9patch和Nine-Patcheclipse
hierachyviewer是一個能夠實時查看應用佈局的一個工具,它能夠可視化的查看佈局視圖層次和顯示效果,還能夠放大查看,對UI佈局進行分析優化.ide
是一個對apk中未編譯文件進行加密生成obb二進制文件或解密加密後的obb文件的一個工具。用法:工具
jobb [-d <directory>][-o <filename>][-pn <package>][-pv <version>] \
[-k <key>][-ov][-dump <filename>][-v][-about]
android官方文檔給我們了一個命令示例,加密命令如:
$ jobb -d /temp/assets/ -o my-app-assets.obb -k secret-key -pn com.my.app.package -pv 11
提取轉存命令:
$ jobb -d /temp/obb-output/ -o my-app-assets.obb -k secret-key
jobb 的命令選項有:
- -d 建立的obb文件的輸入目錄,或提取現有文件的輸出目錄
- -o obb文件名
- -pn apk包名
- -pv 清單文件中的versionCode
- -k obb文件密鑰
- -ov obb文件版本覆蓋
- -dump 轉存提取obb文件的文件名,與-d 聯合使用
- -v 命令輸出log信息
- -about jobb的版本和幫助信息
android 的代碼掃描工具,能夠幫助咱們識別和糾正代碼的結構質量問題。Android Studio默認構建應用程序時會運行配置的lint和IDE檢查。咱們也能夠經過tools下面的lint命令運行lint檢查。下圖顯示了lint檢查的流程。
lint的結果信息會在命令控制檯顯示,手動開啓lint檢測的命令格式以下:
lint [flags] <project directory>
在gradle項目中可使用 gradlew lint 或者 gradle lint,默認會將結果生成一個html文件和一個xml文件,默認位置在build/outputs/lint-results-app_版本名.html和在build/outputs/lint-results-app_版本名.xml文件,html顯示以下:
lint自定義配置就再也不詳敘了,請參考官網文檔:https://developer.android.com/studio/write/lint.html#commandline
因爲篇幅緣由,其他工具接下一篇。