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

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

C++——stack、queue的实现及deque的介绍

目录 1.stack与queue的实现 1.1stack的实现  1.2 queue的实现 2.重温vector、list、stack、queue的介绍 2.1 STL标准库中stack和queue的底层结构  3.deque的简单介绍 3.1为什么选择deque作为stack和queue的底层默认容器  3.2 STL中对stack与queue的模拟实现 ①stack模拟实现

android-opencv-jni

//------------------start opencv--------------------@Override public void onResume(){ super.onResume(); //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是 //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

Android 10.0 mtk平板camera2横屏预览旋转90度横屏拍照图片旋转90度功能实现

1.前言 在10.0的系统rom定制化开发中,在进行一些平板等默认横屏的设备开发的过程中,需要在进入camera2的 时候,默认预览图像也是需要横屏显示的,在上一篇已经实现了横屏预览功能,然后发现横屏预览后,拍照保存的图片 依然是竖屏的,所以说同样需要将图片也保存为横屏图标了,所以就需要看下mtk的camera2的相关横屏保存图片功能, 如何实现实现横屏保存图片功能 如图所示: 2.mtk