《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卡和用户数据以及外观显示等。

相关文章
Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势
本文深入探讨了 Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势。这对于实现高效的跨平台移动应用开发具有重要指导意义。
629 4
如何查看Flutter应用在Android设备上已被撤销的权限?
如何查看Flutter应用在Android设备上已被撤销的权限?
115 64
如何修复 Android 和 Windows 不支持视频编解码器的问题?
视频播放时遇到“编解码器不支持”错误(如0xc00d36c4或0xc00d5212)是常见问题,即使文件格式为MP4或MKV。编解码器是编码和解码数据的工具,不同设备和版本支持不同的编解码器。解决方法包括:1) 安装所需编解码器,如K-Lite Codec Pack;2) 使用自带编解码器的第三方播放器,如VLC、KMPlayer等。这些方法能帮助你顺利播放视频。
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
229 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
75 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
146 14
探索安卓开发:打造你的第一款应用
在数字时代的浪潮中,每个人都有机会成为创意的实现者。本文将带你走进安卓开发的奇妙世界,通过浅显易懂的语言和实际代码示例,引导你从零开始构建自己的第一款安卓应用。无论你是编程新手还是希望拓展技术的开发者,这篇文章都将为你打开一扇门,让你的创意和技术一起飞扬。
101 13
打造个性化安卓应用:从设计到开发的全面指南
在这个数字时代,拥有一个定制的移动应用不仅是一种趋势,更是个人或企业品牌的重要延伸。本文将引导你通过一系列简单易懂的步骤,从构思你的应用理念开始,直至实现一个功能齐全的安卓应用。无论你是编程新手还是希望拓展技能的开发者,这篇文章都将为你提供必要的工具和知识,帮助你将创意转化为现实。
探索安卓开发之旅:打造你的第一个天气应用
【10月更文挑战第30天】在这个数字时代,掌握移动应用开发技能无疑是进入IT行业的敲门砖。本文将引导你开启安卓开发的奇妙之旅,通过构建一个简易的天气应用来实践你的编程技能。无论你是初学者还是有一定经验的开发者,这篇文章都将成为你宝贵的学习资源。我们将一步步地深入到安卓开发的世界中,从搭建开发环境到实现核心功能,每个环节都充满了发现和创造的乐趣。让我们开始吧,一起在代码的海洋中航行!
打造个性化安卓应用:从设计到实现
【10月更文挑战第30天】在数字化时代,拥有一个个性化的安卓应用不仅能够提升用户体验,还能加强品牌识别度。本文将引导您了解如何从零开始设计和实现一个安卓应用,涵盖用户界面设计、功能开发和性能优化等关键环节。我们将以一个简单的记事本应用为例,展示如何通过Android Studio工具和Java语言实现基本功能,同时确保应用流畅运行。无论您是初学者还是希望提升现有技能的开发者,这篇文章都将为您提供宝贵的见解和实用的技巧。

热门文章

最新文章

下一篇
oss创建bucket