Android Studio第3部分:构建和运行应用程序

        在Android Studio的第2部分中,您使用Android Studio创建了第一个动画移动应用程序。现在,第3部分将带您完成在Android模拟器或真实设备中构建和运行应用程序的步骤。

我们将首先使用Gradle构建应用程序的应用程序包(APK)文件。然后,我将向您展示如何在Android模拟器或实际设备(在本例中为Kindle Fire平板电脑)上设置和运行该应用程序。我还将向您展示如何解决Android Studio模拟器设置中的几个问题,包括臭名昭著的等待超时错误。

请注意,此系列已针对Android Studio 3.2.1进行了更新。

构建您的Android应用

如果按照第2部分中的说明进行操作,那么您已经将源代码和资源文件加载到了Android Studio项目中。现在,您已经准备好首次构建该应用程序。

如果还没有,请启动Android Studio。菜单栏提供了一个Build菜单,您将使用该菜单访问Gradle并构建示例应用程序。

生成菜单中选择生成项目。您应该在状态栏上看到Gradle Build Running消息。一段时间后,您应该会看到Gradle Build Finished消息。单击此消息,将出现“ **事件日志”**窗口。

图1

图1.事件日志显示没有问题

建立Android应用程序的方法不止一种。例如,您可以从“ **生成”**菜单中选择“ 重建项目 ” 。另一种方法是实际运行应用程序。如有必要,Gradle将在安装APK和运行该应用之前自动重建该应用。

使用“构建”菜单执行更多操作

Android Studio的“ 构建”菜单可让您执行多个构建任务。例如,您可以使用Generate Signed Bundle / APK 菜单项来构建签名的 app bundle 或APK。

运行您的Android应用

在本节中,我将向您展示如何通过两种方式运行Android应用程序:首先在模拟设备上,然后在实际设备上。在我的示例中,我将使用Amazon Kindle Fire HD平板电脑,但说明通常应适用于您选择的设备。

在模拟设备上运行您的Android应用

您可以通过在“ 运行”菜单中选择“运行”应用程序来运行示例应用程序(W2A)或任何其他应用程序。或者,您可以单击工具栏上的绿色三角形按钮。无论哪种方式,Android Studio都会弹出“ **选择部署目标”**的对话框。

扫描二维码关注公众号,回复: 11257969 查看本文章

图2

图2.必须运行Android Debug Bridge(ADB)才能运行Android应用程序

初始化Android调试桥后,图2中的消息将替换为所有已连接的USB设备和已被Android Studio检测到的运行模拟器的列表。

图3

图3.选择设备或模拟器以运行该应用程序

在这种情况下,Android Studio尚未检测到任何已连接的USB设备或模拟器,因此您需要配置新的虚拟设备。单击创建新的虚拟设备将启动如图4所示的对话框。

图4

图4.使用“虚拟设备配置”对话框选择要仿真的设备

选择想要模拟的设备。在此示例中,我选择了Nexus 5X(默认)。选择后,单击“ 下一步”

出现的“ 系统映像”界面让您选择此设备模拟的系统映像。我单击了Other Images选项卡,然后单击IceCreamSandwich-图5中突出显示的行。

图5

图5.选择一个用于设备模拟的系统映像

您需要单击下载链接以下载所选的任何系统映像。该映像默认情况下未安装。在安装系统映像之前,还将接受许可协议。

图6

图6.接受许可协议,然后单击Next

您必须接受许可协议才能继续。接受许可协议后,将显示“ **组件安装程序”**界面。此时,正在下载并安装系统映像组件。

图7

图7.安装完成后,单击完成

在继续之前,最好检查一下您的工作。使用“ **后退”**按钮返回安装对话框,然后返回“ **Android虚拟设备”(AVD)**界面。在这里,您可以确认更改将运行模拟设备AVD的设置。

图8

图8.保留默认设置,然后单击Finish

对于此示例,我选择保留默认设置。您可以保留默认值或进行任何必要的更改,然后单击“ 完成”。现在,您应该返回到“ **选择部署目标”**对话框。

图9

图9. Nexus 5X API 15在Android虚拟设备列表中可用

选择你创建的模拟器,然后单击“ 确定”

对Android设备模拟器进行故障排除

不幸的是,在安装的这一点上,您可能会收到一条消息,提示不支持即时运行。在我的情况下,状态栏显示“ **正在等待目标设备联机”**消息,并出现一个空的模拟器窗口。

图10

图10.黑屏

模拟器窗口出现后不久qemu-system-armel.exe,负责创建此窗口的基于Windows的程序崩溃了。(从第1部分中回想起,我正在使用64位Windows操作系统。)

图11

图11.有关崩溃的可执行文件的Windows通知

起初,我不确定如何解决此问题。幸运的是,下一次我运行Android Studio时,在Android Studio主窗口的右下方区域中观察到一条IDE和Plugin Updates消息。

图12

图12.单击Update链接,然后按照说明更新Android模拟器

我单击了更新链接,并按照说明更新了模拟器,从而生成了一个新qemu-system-armel.exe文件。

之后没有再次崩溃,但我很快遇到了另一个障碍。

等待目标设备上线

当我尝试在模拟器中运行该应用程序时,状态栏再次显示“ **正在等待目标设备联机”**消息,然后显示空白的模拟器窗口。

最终,Android Studio放弃等待,并显示错误消息:等待设备时出错:等待模拟器上线300秒超时。

当我搜索这些消息时,发现许多其他人都遇到了此问题。一些开发人员通过启用AVD的图形处理单元硬件解决了此问题。我们需要进行一些探索才能弄清楚这一点,因此,我将分享我的经验教训,并希望为您节省一些时间。

启用AVD的图形处理单元

AVD由位于.avd扩展名目录中的几个文件和目录组成。例如,我创建的AVD位于C:\USERS\Jeff\.android\avd\Nexus_5X_API_15.avd中。

此目录包含一个config.ini文件,该文件存储AVD的配置设置。有两个设置引起了我的注意:

hw.gpu.enabled=no
hw.gpu.mode=off

我将这些条目更改为以下内容:

hw.gpu.enabled=yes
hw.gpu.mode=on

启用图形处理单元可以解决问题:下次尝试运行该应用程序时,我看到了运行正常的Nexus 5X模拟设备。

图13

图13.解锁设备以查看应用程序

我使用鼠标向右滑动锁定图标来解锁设备。此时,模拟器显示了示例应用程序的主要活动。

图14

图14.单击Animate按钮以运行动画

如何使用AVD Manager?

如果您像我一样,可能希望可以通过AVD Manager更改模拟器设置。例如,AVD的配置屏幕上有一个图形下拉列表框,其中包含软件-GLES 1.1(默认设置)和硬件-GLES 2.0条目。我尝试选择“ 硬件-GLES 2.0”,但所做的更改没有保留。我成功更改hw.gpuconfig.ini文件中的条目。

在实时设备上运行Android应用

通过Android Studio缓慢的模拟器运行应用程序可能会非常令人沮丧。一种解决方案是使用更快的第三方模拟器,例如GenyMotion的Android Studio插件。另一个解决方案是使用实际的Android设备。

几年前,我购买了运行Android 4.0.3(API级别15)的第一代Amazon Kindle Fire HD 7“平板电脑。我仍然使用该平板电脑运行不需要最新Android API的Android应用程序。

在研究如何将Kindle Fire平板电脑与Android Studio 3.2.1结合使用时,我从网上找到了两个有用的指南:设置Fire Tablet的开发环境通过ADB连接到Fire Tablet。我将总结将Kindle Fire设备连接到Android Studio的过程,但是如果您需要更多信息,请参考这些指南。

首先,如果您是像我这样的Windows用户,则需要先卸载再将Kindle Fire平板电脑连接到开发计算机时安装的非ADB驱动程序,而无需先启用ADB。然后,安装亚马逊的USB驱动程序。

接下来,下载Kindle Fire USB驱动程序。下载的ZIP存档包含一个Fire_Devices ADB drivers.exe应用程序。

执行Fire_Devices ADB drivers.exe并遵循说明。我最后找到一个包含必要驱动程序文件的目录C:\Program Files (x86)\Amazon.com\Fire_Devices\Drivers

安装驱动程序后,我需要在平板电脑上启用ADB。然后,将平板电脑连接到开发计算机。如果您需要将平板电脑连接到Android Studio的其他说明,请参阅Amazon指南。

完成所有设置后,启动Android Studio,加载您的Android项目,然后运行该应用程序。这次,“ **选择部署目标”**对话框应在“ 连接的设备”部分显示一个Amazon KFTT条目。选择此项,然后单击“ 确定”。Android Studio通过指示Gradle来构建应用程序来做出响应。完成后,它将安装应用程序的APK并在设备上运行该应用程序。

图15

图15.单击Animate执行动画

第三部分总结

您已经使用Android 3.2.1或更高版本编写,构建和运行了第一个Android Studio应用程序,并且在此过程中进行了一些故障排除。下一步,我建议尝试所学知识。使用前三篇Android初学者教程中的示例和源代码来开发自己的新项目。在学习使用Android Studio及其内置功能的来龙去脉时,请保持项目简单,但要挑战自己进行练习。

当然,您可以使用Android Studio做更多的事情。本系列的最后一篇文章介绍了三个内置工具,用于记录,调试和整理Android应用程序。我还将使用三个生产力插件(包括Project Lombok)扩展Android Studio。

在此之前,祝您编程愉快!

猜你喜欢

转载自blog.csdn.net/zenglintao/article/details/106277162