《Android多媒体应用开发实战详解:图像、音频、视频、2D和3D》——2.1节简析Android安装文件

简介:

本节书摘来自异步社区《Android多媒体应用开发实战详解:图像、音频、视频、2D和3D》一书中的第2章,第2.1节简析Android安装文件,作者 王石磊 , 吴峥,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.1 简析Android安装文件
Android多媒体应用开发实战详解:图像、音频、视频、2D和3D
当下载并安装Android后,会在其安装目录中看到一些安装文件。了解这些文件具体是干什么用的,对于我们后面的驱动开发知识学习十分有用,所以在本节的内容中将简要介绍这些安装文件的基本知识。

2.1.1 Android SDK目录结构
安装Android SDK后,其安装目录的具体结构如图2-1所示。


26a90fcd67b965fef6a9f23d5e8816b04f4666e1

temp:里面包含了一些常用的文件模板。
tools:包含了一些通用的工具文件。
usb_driver:包含了AMD64和X86下的驱动文件。
SDK Setup.exe:Android的启动文件。

2.1.2 android.jar及内部结构
在“platforms”目录下的每个Android版本中,都有一个android.jar,如“platformsandroid-8”,如图2-3所示。


b87af39f97568e51132e28cc6abc1188fca4fef1

android.jar是一个标准的压缩包,里面包含了编译后的压缩文件,包含了全部的API,使用Windows系统上的解压缩工具WinRAR可以打开此压缩文件,此时可以看到其内部结构分别如图2-4和图2-5所示。


e9ece114c70131e29f5582b105bed0ae2cbb1ad3

2.1.3 SDK文档及阅读技巧
通过解压缩android.jar后,了解了其内部API的包结构和组织方式,如果要深入理解各个文件包内包含的API和API的具体用法,就必须学会阅读、查找SDK文档。

可以使用浏览器打开“docs”目录下的文件index.html,如图2-6所示。


4cd5deda2ae386da39a99da0ac15eb5910db3365

在图2-6所示的主页中,介绍了Android基本概念和当前常用版本,在右侧和顶端导航栏中列出了一些常用的链接。此SDK文件对于初学者来说十分重要,可以帮助读者解决很多常见的问题,是一个很好的学习文档和帮助文档。

单击导航栏中的【Dev Guide】按钮打开如图2-7所示的界面。


6ad72e0522bc4dd036e3649513814387594808c2

图2-7所示的页面中,左侧是目录索引链接,单击某个链接后,可以在右侧界面中显示对应的说明信息。下面对各个索引目录链接简单介绍一下。

如果要想迅速地理解一个问题或知识点,可以在搜索对话框中对SDK进行检索,搜索到自己需要的内容。当然,很多热心的程序员和学习者对SDK进行了翻译,网络上有很多SDK中文版,读者可以从网络中获取。

2.1.4 Android SDK工具集
在SDK中,集成了很多有用的开发工具,这些工具能够帮助读者在Android平台上开发出有用的应用程序。在Android SDK中,最为有用的是Android模拟器和Eclipse的Android开发插件,但是SDK中也包含了各种在模拟器上用于调试、打包和安装的工具,能够真对不同的场景进行使用。在下面的内容中,将简要介绍这些工具的基本使用知识。

Android模拟器。
模拟器是运行在计算机上的虚拟移动设备,有关模拟器的基本知识已经在本书的第一章中进行了详细介绍,在此不再讲解。

集成开发插件ADT。
Android 为Eclipse 定制了一个插件,即Android Development Tools(ADT),这个插件为用户提供了一个强大的综合环境用于开发Android应用程序。ADT扩展了Eclipse的功能,可以让用户快速地建立Android项目,创建应用程序界面,在基于Android框架API的基础上添加组件,以及用SDK工具集调试应用程序,甚至导出签名(或未签名)的APKs以便发行应用程序。

调试监视服务ddms.bat。
调试监视服务ddms.bat集成在Dalvik(Android平台的虚拟机)中,用于管理运行在模拟器或设备上的进程,并协助调试工作。它可以去除一些进程,选择一个特定的程序来调试,生成跟踪数据,查看堆和线程数据,对模拟器或设备进行屏幕快照等操作。

Android调试桥adb.exe。
Android调试桥(adb)是多种用途的工具,该工具可以帮助我们管理设备或模拟器的状态。可以通过下面的几种方法加入adb。

(1)在设备上运行Shell命令。

(2)通过端口转发来管理模拟器或设备

(3)从模拟器或设备上复制文件。

Android资源打包工具aapt.exe:此工具可以创建apk文件,在apk文件中包含了Android应用程序的二进制文件和资源文件。
Android接口描述语言aidl.exe:用于生成进程间接口代码。
SQLite3数据库sqlite3.exe:Android可以创建和使用SQLite数据文件。
跟踪显示工具:可以生成跟踪日志数据的图形分析视图,这些跟踪日志数据由Android应用程序产生。
创建SD卡工具:用于创建磁盘镜像,此镜像可以在模拟器上模拟外部存储卡,如常见的SD卡。
DX工具(dx.bat):将class字节码重写为Android字节码(被存储在dex文件中)。
生成Ant构建文件(activitycreator.bat)。
activitycreator.bat是一个脚本,用于生成Ant构建文件。Ant构建文件用于编译Android应用程序,如果在安装ADT插件的Eclipse环境下开发,则就不需要这个脚本了。

Android虚拟设备。
在Android SDK1.5版以后的Android开发中,必须创建至少一个AVD,AVD全称为Android虚拟设备(Android Virtual Device),每个AVD模拟了一套虚拟设备来运行Android平台,这个平台至少要有自己的内核、系统图像和数据分区,还可以有自己的SD卡和用户数据以及外观显示等。

相关文章
|
27天前
|
Java API 开发工具
如何将python应用编译到android运行
【6月更文挑战第27天】本文介绍在Ubuntu 20上搭建Android开发环境,包括安装JRE/JDK,设置环境变量,添加i386架构,安装依赖和编译工具。并通过`p4a`命令行工具进行apk构建和清理。
37 6
如何将python应用编译到android运行
|
17天前
|
Java 调度 Android开发
深入解析Android应用开发中的响应式编程与RxJava应用
在现代Android应用开发中,响应式编程及其核心框架RxJava正逐渐成为开发者的首选。本文将深入探讨响应式编程的基本概念、RxJava的核心特性以及如何在Android应用中利用RxJava提升代码的可读性和性能。 【7月更文挑战第7天】
|
6天前
|
安全 Java Android开发
探索安卓与iOS开发的差异:构建未来应用的关键考量
【7月更文挑战第18天】在移动应用开发的广阔天地中,安卓和iOS两大平台各领风骚。本文将深入探讨这两个平台在开发过程中的主要差异,包括编程语言、用户界面设计、性能优化、安全性以及市场策略等方面。通过比较分析,旨在为开发者提供决策支持,帮助他们选择最适合自己项目需求的平台,同时考虑到用户体验和市场需求的变化,为未来的应用开发指明方向。
|
14天前
|
开发者 Kotlin Android开发
Kotlin协程在Android开发中的应用
【7月更文挑战第10天】Kotlin协程简化了Android异步编程,提供轻量级并发。挂起函数让异步代码看起来同步,不阻塞线程,便于管理。在项目中,添加Kotlin和协程依赖,如`kotlinx.coroutines-core`和`kotlinx-coroutines-android`。使用`CoroutineScope`和`launch`处理耗时任务,如网络请求,避免主线程阻塞。挂起函数和调度器控制执行上下文,适应不同任务需求。
|
20天前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
|
28天前
|
开发工具 Android开发 开发者
Android `.9.png` 图像是用于UI的可拉伸格式,保持元素清晰度和比例
【6月更文挑战第26天】Android `.9.png` 图像是用于UI的可拉伸格式,保持元素清晰度和比例。通过边上的黑线定义拉伸区域,右下角黑点标识内容区域,适应文本或组件大小变化。常用于按钮、背景等,确保跨屏幕尺寸显示质量。Android SDK 提供`draw9patch.bat`工具来创建和编辑。**
84 6
|
19天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的高校后勤网上报修系统安卓app附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的高校后勤网上报修系统安卓app附带文章源码部署视频讲解等
15 0
|
24天前
|
存储 Android开发
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
12 0
|
24天前
|
存储 Android开发
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
13 0
|
24天前
|
Android开发 开发者 UED
使用AlarmManager实现Android应用中的定时任务
使用AlarmManager实现Android应用中的定时任务