Android开发工具介绍(adb、AVD、DDMS)

2023-10-30 05:52

本文主要是介绍Android开发工具介绍(adb、AVD、DDMS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.  adb

1.1  查看设备

1.2  安装软件

1.3  卸载软件

1.4  登录设备 shell

1.5  从计算机上发送文件到目标机

1.6  从目标机上下载文件到计算机

1.7  显示帮助信息

2.  AVD

2.1  AVD 的创建

2.2  启动 AVD 模拟器

3.  DDMS

3.1  DDMS的启动方法

3.2  DDMS 工作原理

3.3  DDMS 的功能

3.3.1  Devices 面板

3.3.2  Fmulator Contro 面板

3.3.3  其他功能

3.3.4  LogCat 面板


1.  adb

        adb (Android Debug Bridge,调试桥)是一个debug工具,可将其他工具接入模拟器和设备,通过adb我们可以在Eclipse中通过DDMS来调试Android程序。除了可以让其他工具(ADT插件)功能生效以外,还可以使用命令行上传或下载文件、安装或卸载程序包、通过进入设备或模拟器的 shell 环境访问许多其他功能。当我们运行 Eclipse 时 adb 进程就会自动运行。

        adb是一个客户端/服务器端程序,其中客户端是用米操作的电脑,服务器端是Android设备。adb 安装在 Android SDK的 platform-tools 目录下,它的常用命令如下。

1.1  查看设备

命令:adb devices

        这个命令是查看当前连接的设备,连接到计算机的 Android 设备或者模拟器将会列出显示。如图 2-1 所示,在运行“adb devices”命令之后可以看到当前连接的一个设备 “emulator5554 device”

图 2-1 利用 adb 命令查看当前连接的 Android 设备

1.2  安装软件

命令: adb install <apk文件路径>

这个命令将指定的 apk 文件安装到设备上。

1.3  卸载软件

命令1: adb uninstall<软件名>

命令2: adb uninstall-k<软件名>

如果加 -k 参数,为卸载软件但是保留配置和缓存文件。

1.4  登录设备 shell

命令 1: adb shell

命令2: adb shell <command命令>

这个命令将登录设备的 shell。

后面加<command 命令>将是直接运行设备命令,相当于执行远程命令。

1.5  从计算机上发送文件到目标机

命令: adb push<本地路径><远程路径>

用push命令可以把计算机上的文件或者文件夹复制到Android目标机中

1.6  从目标机上下载文件到计算机

命令: adb pull <远程路径><本地路径>

用 pull命令可以把 Audivid日标机上的文件或者文件夹复制到计算机。

1.7  显示帮助信息

命令: adb help

2.  AVD

        AVD (Android Virtual Device,安卓虚拟设备) ,一般称其为Android模拟器,可以用来模拟一个Android手机或平板电脑,由于可以虚拟出来各个API版本、各种屏幕分辨率的Android设备,所以AVD在 Android开发中很常用。

        AVD没有SIM卡,也没有WiFi网络,硬件资源受限,所以有部分Android 应用程序需要在真机(真实的Android设备)上调试,比如使用到3G和WiFi网络、使用3D渲染、使用到SIM卡等功能的应用程序

2.1  AVD 的创建

建立 AVD 的步骤如下。

第一步,在 Eclipse 中,打开菜单项 Windows->Android Virtual Device Manager.

第二步,在出现的 AVD 管理界面中,点击右上角的 New 按钮,就会出现新建 AVD 的界面,在此界面中可以配置 AVD,如图 2-2 所示。配置完成后,点击 OK 按钮,即可创建一个新的AVD.这个被创建的AVD,就相当于一个连接在计算机上的Android设备,可以用来运行和调试 Android 程序。

图 2-2 AVD 建立界面

图 2-2 中 AVD 的配置信息说明如下,

(1) AVD Name: AVD名称,作为标识,开发者自用,能识别不同的AVD即可。

(2) Device:要模拟的设备,一般为现在 Google 的 Nexus 系列手机,以及其他手机和平板,区别在于屏幕分辨率不同,可以建立多个 AVD 来做屏幕适配。

(3) Target:模拟器的API版本。

(4) Keyboard /Skin:键盘布局/皮肤设置,按默认选中即可。

(5) RAM:模拟器的内存大小,会共享宿主机的内存,一般为默认大小即可,太大会降低宿主机的速度,太小会降低模拟器的速度。

(6) VM Heap:模拟器堆栈大小,默认值即可。

(7) Internal Storage:模拟器 ROM 大小,存放安装到模拟器上的程序,占用计算机磁盘空间。

(8) SD Card Size:模拟器的 SD Card 大小,一般存放多媒体、照片等大文件,占用计算机的磁盘空间。与ROM占用计算机空间的机制不同,只要AVD建立好,就会占用这样大小的磁盘空间,所以这个值不宜设置太大,不够用时再设置大一些即可。

(9) Snapshot:快照功能,会保存上次的AVD显示界面,以加快下一次AVD的启动,但有时会影响程序调试,导致对代码的更改不能立即反映在AVD的界面上。

(10) Use Host GPU:使用宿主机的 GPU 加速,一般在调试 3D 游戏时开启,不过通常都使用真机做3D游戏的调试。

2.2  启动 AVD 模拟器

        建好 AVD 后,就会出现如图 2-3 所示的界面,可以看到在列表中出现了刚才建立的AVD,选择它,然后点击右边的 Start 按钮,在之后出现的窗口中点击Launch 按钮,该 AVD就被启动了,如图 2-3 所示,它显示的就是Nexus_One这款手机在4.2 (API 17)版本下的界面,后续我们就可以把写好的Android程序运行在这个AVD上了。

图2-3 AVD选择界面

图 2-3 AVD 启动后的初始界面

3.  DDMS

        DDMS (Dalvik Debug Monitor Service)是Android开发环境中的Dalvik虚拟机调试监控服务。DDMS为我们提供了测试设备截屏,针对特定的进程查看正在运行的线程及堆信息、Logcat、广播状态信息、模拟电诂呼叫、接收 SMS、虚拟地埋坐标等功能。

3.1  DDMS的启动方法

(1) DDMS安装在Android SDK的tools目录下,可以在此目录下双击ddms.bat直接运行;

(2)在Eclipse中,打开菜单" Window--Open Perspective" ,双击菜单项"DDMS",也可启动DDMS, DDMS 界面如图 2-4所示。

图 2-4 DDMS 界面

3.2  DDMS 工作原理

        DDMS将搭建起IDE与测试终端(Emulator或connected device)的链接。DDMS可以实时监测到测试终端的连接情况,当有新的测试终端连接后, DDMS将捕捉到终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。

DDMS监听第一个终端应用程序进程的端口为8600,应用程序进程将分配8601,如果有更多终端或者更多应用程序进程将按照这个顺序依次类推。DDMS通过8700端口接收所有终端的指令。

3.3  DDMS 的功能

可以通过 DDMS 的图形界面了解到更多 DDMS 的功能。

3.3.1  Devices 面板

        在这个面板可以看到所有与 DDMS 连接的终端的信息,以及每个终端正在运行的应用程序进程,每个进程的右边相对应的是与调试器链接的端口。因为Android是基于Linux内核开发的平台,同时也保留了Linux中特有的进程ID,它介于进程名和端口号之间。Devices面板如图 2-5 所示。

图 2-5 Devices 面板

3.3.2  Fmulator Contro 面板

        通过这个面板的一些功能可以非常容易的使测试终端模拟真实手机所具备的一些交互功能。比如接听电话、根据选项模拟各种不同网络情况、模拟接受SMS消息和发送虚拟地址坐标用于测试 GPS 功能等。Emulator Contro 面板如图 2-6 所示。

Telephony Status 面板:通过选项模拟语音质量以及信号连接模式:

Telephony Actions面板:模拟电话接听和发送SMS到测试终端;

Location Control 面板:模拟地理坐标或者模拟动态的路线坐标变化并显示预设的地理标识。可以通过 Manual 面板手动为终端发送二维经纬坐标;或在 GPX 面板通过 GPX 文件导入序列动态变化地理坐标,从而模拟行进中 GPS 变化的数值:在KML 面板可以通过 KML 文件导入独特的地理标识,并以动态形式根据变化的地理坐标显示在测试终端。

图2-6 Emulator Contro面板

3.3.3  其他功能

        Devices面板右边的窗口中还有Threads、Heap、Allocation Tracker、File Explorer、NetworkStatisties和System Information选项卡,如图2-7所示,可以显示线程统计信息、栈信息、内存分配跟踪情况、Android设备的文件系统、网络使用统计信息和Android设备的系统信息。

图 2-7 其他功能选项卡

        在以上的这些选项卡中,最常使用的是File Explorer选项卡,它可以把文件上传到Android设备,或从Android设备下载文件,也可以进行文件删除操作。

3.3.4  LogCat 面板

        在DDMS界面中的下面是LogCat面板,可以输出AVD或Android设备的一些运行和调试信息。LogCat是Android日志系统的名称,是一个日志记录工具,可以通过Eclipse、adh读取TogCat数据,它可以提供系统中相关事件的诊断信息。开发者可以由此将应用程序的调试和诊断信息发送到LogCat.这个工具很常用,可以理解为C或Java程序中的控制台输出,常被用来在手写代码的调试方式中,输出调试信息,使用时在代码中先使用 import关键字导入android.util.Log包,然后在代码中使用Log.d(String, String). Log.i(String, String)等方法输出调试信息。

        LogCat 面板如图 2-8 所示,其右边窗格显示的是 LogCat 日志,左边窗格可以过滤一些调试信息。

图2-8 LogCat面板


这篇关于Android开发工具介绍(adb、AVD、DDMS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/306017

相关文章

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

Android使用ImageView.ScaleType实现图片的缩放与裁剪功能

《Android使用ImageView.ScaleType实现图片的缩放与裁剪功能》ImageView是最常用的控件之一,它用于展示各种类型的图片,为了能够根据需求调整图片的显示效果,Android提... 目录什么是 ImageView.ScaleType?FIT_XYFIT_STARTFIT_CENTE

redis过期key的删除策略介绍

《redis过期key的删除策略介绍》:本文主要介绍redis过期key的删除策略,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录第一种策略:被动删除第二种策略:定期删除第三种策略:强制删除关于big key的清理UNLINK命令FLUSHALL/FLUSHDB命

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Android实现悬浮按钮功能

《Android实现悬浮按钮功能》在很多场景中,我们希望在应用或系统任意界面上都能看到一个小的“悬浮按钮”(FloatingButton),用来快速启动工具、展示未读信息或快捷操作,所以本文给大家介绍... 目录一、项目概述二、相关技术知识三、实现思路四、整合代码4.1 Java 代码(MainActivi

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Android Studio 配置国内镜像源的实现步骤

《AndroidStudio配置国内镜像源的实现步骤》本文主要介绍了AndroidStudio配置国内镜像源的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、修改 hosts,解决 SDK 下载失败的问题二、修改 gradle 地址,解决 gradle