Android基础知识——AndroidSDKManager详解
做Android开发时,免不了使⽤Android SDK Manager,安装需要的sdk版本、buildTools版本等等。下图展⽰了2016.11.16号Android SDK Manager所有的package。很多Android开发的新⼈在使⽤的时候可能会疑惑了:这些package到都是什么功能呢,都要安装吗?本篇⽂章将为你把这些疑惑解开(如果你只想知道需要安装哪些package,直接跳⾄⽂末)。
1. SDK Manager ⽬录结构
SDK Manager 的package⽬录结构如下⾯两幅图所⽰
⼤体上可以分为Tools、Platforms和Extras三部分。install需要的package后,Android Studio将在本地创建对应的⽂件⽬录,如图是博主安装了⼀些package之后,PC上的⽬录结构:
通过本地⽂件,我们可以了解到install某个package之后,会提供什么样的功能,由⽂件夹的命名到对应的package并不是很难,⽐如红⾊圈出来的三块,很容易知道来⾃SDK Manager的Tools⽬录下⾯。下⾯我们将通过查看Tools、Platforms和Extras三部分的本地⽂件的⽅式带⼤家详细了解SDK Manager。
1. Tools
Tools⽂件夹下包括三种tools:Android SDK Tools,Android SDK Platform-tools和Android SDK Build-tools。对应于本地⽂件夹的tools,platform-tools和build-tools。
androidsdk安装步骤1. Android SDK Tools
Android SDK Tools对应的本地⽂件夹的存储⽬录如下图所⽰:
SDK Tools包含了很多重要的⼯具,⽐如:ddms⽤于启动Android调试⼯具;draw9patch则是绘制android平台的.9图的⼯具;
monkeyrunner则是⼀个不错的压⼒测试⼯具,模拟⽤户在⼿机上随机按键;mksdcard是模拟器SD映像的创建⼯具,emulator是Android SDK模拟器主程序;traceview是android平台上重要的调试⼯具,可以列出每个⽅法调⽤所使⽤的事件,展开⽅法还能看到⽅法被调⽤其他⽅法所占⽤的时间百分⽐,这样就可以知道那个⽅法⽤了最多的资源,进⽽可以对其进⾏优化或者将其搬离主线程。
其他⼯具就不⼀⼀介绍了,感兴趣的⾃⾏了解。
由此可见,SDK Tools是需要安装的。
2. Android SDK Platform-tools
SDK Platform-tools的本地⽂件夹对应的⽂件⽬录
Platform-tools同样包含了很多重要⼯具:adb是android调试⼯具,以命令⾏的形式和模拟器或者连接的⼿机进⾏通讯;sqlite3帮助开发者在PC上查看sqlite数据库等其它⼯具。同上,其他⼯具可以参考Google的开发者⽂档了解。
SDK Platform-tools也是需要安装的。
3. Android SDK Build-tools
Android SDK Build-tools和Android SDK Tools以及Android SDK Platform-tools不同的地⽅是,Android SDK Managert 保留了Android SDK Build-tools的⽼版本,⽽其他两类Tools只提供最新版的update。在博主的电脑上安装过的Build-tools就有这⼏个版本:
早期的Build-tools放在Platform-tools中,2013年之后为了
将编译相关的组件从platform-tools组件中解耦,Google新建了Build-tools存放,并且Build-tools可以独⽴于IDE更新。
Decoupled the build-specific components of the Android SDK from the platform-tools component, so that the
build tools can be updated independently of the integrated development environment (IDE) components.
为什么Build-tools需要保留旧的版本,stack overflow给出的解释是保持向后兼容的能⼒,新的Build-tools可能移除了⽼版的⼀些特性,此时对采⽤⽼版Build-tools build的⼯程来说,还得接着⽤旧版。
they keep the old build tools because as they update the tools, some features become deprecated. But app
developers might have source code that relies on those features so they keep the old versions available to
support those old code bases.
博主的24.0.2版本的Build-tools包含的⼯具如下:
包括 aapt(Android Asset Packaging Tool)安卓资源打包⼯具:编译应⽤程序的资源⽂件(包括 l 和你的Activitiy 的 xml ⽂件),⽣成 R.java ⽂件,这样你就可以从你的java代码中引⽤资源;aidl:把 .aidl 接⼝转换成 java 接⼝;dx:转化 .class 中间代码为dvlik中间代码,所有经过 java 编译的⽣成 .class ⽂件都需要此⼯具进⾏转换,最后打包进 apk ⽂件中等⼯具等等功能。
综上,博主建议⼤家创建新⼯程时尽量使⽤最新版的build-tools,⼀个是新版的修复⽼板的⼀些bug,⼆个是功能和性能上都会有提升。
2. Platforms
每个Android版本对应于⼀个Platforms版本,2016.11.16号官⽅给出的SDK版本可选项从Android 2.1到最新的Android 7.1.1。每个版本的Platforms⼜包括Android SDK 的SDK Platform,Document,Sources以及System Image。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论