Android工具包下学习

前言

由于最近工作一直很忙,刚好这几天有点空,就想着写点不一样的文章,就想到平时大多不会太多关注sdk下面工具包内工具和用途,我会用三四篇文章来全部介绍一边,下面我会分三部分来讲解:tools、platform-tools、build-tools

一、介绍

本包是sdk下面tools包下面,本包下面主要会包括测试、调试、第三方工具。模拟器、数据管理工具、混淆、默认的模版demo等。

二、ddms调试

ddms调试的工具,用过eclipse都会明白,此工具可以查看应用日志和调试作用。

三、draw9patch工具

draw9patch工具用来制作.9图片,.9.PNG确实是标准的PNG格式,只是在最外面一圈额外增加1px的边框,这个1px的边框就是用来定义图片中可扩展的和静态不变的区域。特别说明,left和top边框中交叉部分是可拉伸部分,未选中部分是静态区域部分。right和bottom边框中交叉部分则是内容部分(变相的相当于定义看一个内边距,神似padding功能,后面我会单独介绍一下),这个参数是可选的, 如下图。
Android工具包下学习_第1张图片

四、hierarchy viewer工具

HierarchyViewer能够 可视化的角度直观地获得 UI 布局设计结构和各种属性的信息,帮助我们优化布局设计,但是用了很多种办法,最后证明是么办法连上设备看到布局,网上说要root,或者android:debugable情况。

五、uiautomatorviewer工具

         uiautomatorviewer工具可以看到应用的界面视图,可以看到里面每个布局的实现,这个吊吊吊。 点击手机图标的按钮,不过如果刷新就的自己手动点击一次。
水 Android工具包下学习_第2张图片

六、traceview介绍

traceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的 hotspot。TraceView 本身只是一个数据分析工具,而数据的采集则需要使用 Android SDK 中的 Debug 类或者利用 DDMS 工具。二者的用法如下:
  • 开发者在一些关键代码段开始前调用 Android SDK 中 Debug 类的 startMethodTracing 函数,并在关键代码段结束前调用 stopMethodTracing 函数。这两个函数运行过程中将采集运行时间内该应用所有线程(注意,只能是 Java 线程)的函数执行情况,并将采集数据保存到 /mnt/sdcard/ 下的一个文件中。开发者然后需要利用 SDK 中的 TraceView 工具来分析这些数据。
  • 借助 Android SDK 中的 DDMS 工具。DDMS 可采集系统中某个正在运行的进程的函数调用信息。对开发者而言,此方法适用于没有目标应用源代码的情况。

DDMS 中 TraceView 使用示意图如下,调试人员可以通过选择 Devices 中的应用后点击  按钮 Start Method Profiling(开启方法分析)和点击 Stop Method Profiling停止方法分析

Android工具包下学习_第3张图片

开启方法分析后对应用的目标页面进行测试操作,测试完毕后停止方法分析,界面会跳转到 DDMS 的 trace 分析界面,如下图所示:

Android工具包下学习_第4张图片

七、mksdcard介绍

mksdcard是用来建立SD卡映像的工具,用来建立一个Fat32格式的磁盘映像,其使用方法如下所示:

mksdcard [-l label]

mksdcard的参数-l用于指定磁盘映像的标签,size用于指定磁盘映像的大小,其后面可以跟K、M、G等参数,file是磁盘映像的文件名称,这个文件也就是在仿真器运行过程中指定的文件。 

mksdcard的一个使用的示例如下所示: 

> mksdcard 128M sdcard.img 

这表示建立了一个大小为128M,名称为sdcard.img的Fat32磁盘映像文件。

八、emulator模拟器命令介绍

第一种方式:emulator -avd

第一步:进入cmd

第二步:输入命令行如下:emulator -avd

第二种方式:emulator -data 镜像文件名称

假如模拟器创建文件在电脑本地路径:C:\Users\shiyuntian\.android\avd\android2.3.1.avd下

第一步:cmd进入命令行

第二步:在命令行中输入(标红部分为镜像文件)

emulator –data  C:\Users\shiyuntian\.android\avd\android2.3.1.avd/userdata-qemu.img-avd android2.3.1

emulator - skin HVGA-L (480*320,水平显示)

emulator - skin HVGA-L (320*480,垂直显示,模拟器预设模式)

emulator - skin HVGA-L (320*240,水平显示)

emulator - skin HVGA-L (240*320,垂直显示)

emulator - sdcard sdcard.img

emulator -timezone Asia/Taipei (指定时区)

emulator -no-boo-anim (省略开机小机器人启动画面)

emulator -scale auto (调整模拟器视窗大小)

emulator - scale factor (factor: 0.1-3.0)

emulator -dpi-device 300 (更改仿真器的分辨率,default为 165dpi)

emulator -skin (更改模拟器显示模式)

emulator -help-keys (显示键盘快速说明)

emulator -shell (相当于adb shell 功能)

emulator -data data.img (使 /data 目录使用 data.img 的文件空间)

emulator -sdcard sdcard.img (使 /sdcard 目录使用 sdcard.img 的文档空间)

emulator -cache cache.img (浏览器暂存空间)

emulator -wipe-data (使模拟器恢复到原始设置)

emulator -help (显示 emulator 指令参数)

九、monitor命令介绍

(1) 下载 ASM_2_50.zip 并解压缩, 取得 asm.jar

(2) 将 asm.jar 复制到D:android-sdkplatform-tools目录下

2. 执行 Android Screen Monitor

win+R ==》 运行cmd控制台


进入D:android-sdkplatform-tools 执行下面命令:

>java -jar asm.jar

打开后,手机连接到电脑,在电脑上会出现手机的屏幕

十、lint命令介绍

Android Studio 

Analyze -> Run Inspection by Name

unusedResources

unused declaration

结果:

我们apk里引用了近一百的aar。我对他们进行逐一检查。

发现了300+冗余文件 节省了700+KB字节占用

建议:

各业务团队因养成定期检查的良好习惯。即减少了冗余,又能减少平时开发业务中无用代码的干扰。




























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