您的位置:首页 > 移动开发 > Android开发

Android工具包下学习

2016-05-18 15:40 549 查看


前言

由于最近工作一直很忙,刚好这几天有点空,就想着写点不一样的文章,就想到平时大多不会太多关注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功能,后面我会单独介绍一下),这个参数是可选的,
如下图。



四、hierarchy viewer工具

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

五、uiautomatorviewer工具

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



六、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(停止方法分析)



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



七、mksdcard介绍

mksdcard是用来建立SD卡映像的工具,用来建立一个Fat32格式的磁盘映像,其使用方法如下所示:
mksdcard [-l label] <size> <file>
mksdcard的参数-l用于指定磁盘映像的标签,size用于指定磁盘映像的大小,其后面可以跟K、M、G等参数,file是磁盘映像的文件名称,这个文件也就是在仿真器运行过程中指定的文件。
mksdcard的一个使用的示例如下所示:
> mksdcard 128M sdcard.img
这表示建立了一个大小为128M,名称为sdcard.img的Fat32磁盘映像文件。

八、emulator模拟器命令介绍

第一种方式:emulator -avd <avd 名称>
第一步:进入cmd
第二步:输入命令行如下:emulator -avd <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字节占用




建议:

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: