物联网移动应用开发
上QQ阅读APP看书,第一时间看更新

2.4 运行应用

8 运行应用

运行应用有两个选择。可以选择在一个真正的物理设备上运行,如果没有Android手机或者平板电脑,可以选择在Android模拟器上运行。Android SDK中内置了Android模拟器,这个模拟器允许建立一个或者多个Android虚拟设备(Android Virtual Device,AVD)。在虚拟设备上运行应用与在真实的物理设备上运行一样,都可以测试应用。

在虚拟设备上运行应用的具体操作步骤如下。

1)在Android Studio中的模拟器上运行应用之前,首先要创建Android虚拟设备。在“Tools”(工具)菜单下,选择“AVD Manager”命令,进入AVD管理器,如图2-16所示。

图2-16 选择AVD管理器

2)要在Android Studio中创建一个AVD,需要完成几个步骤。首先单击“Create Virtual Device”按钮,如图2-17所示。

图2-17 虚拟设备向导

3)这里需要选择一个将要模拟的硬件设备。可以选择不同的设备,包括TV、手机、可穿戴设备、平板电脑。选择“Nexus 5X”这个已经存在的设备,在右边可以看到这个设备的一些物理参数(屏幕尺寸、分辨率),如图2-18所示。

图2-18 选择设备

4)如果在列表中没有满足需要的设备,可以单击左下角的“New Hardware Profile”按钮,自定义设备。单击“Next”按钮。

5)接下来,需要选择一个系统映像(system image)。系统映像提供了一个安装版本的Android操作系统,针对所构建的应用,要为它与兼容的API层次选择一个系统映像。如果希望应用在API 17以上运行,就要选择相应的系统映像(对应API 17以上)。这里选择API 28对象的系统映像,即“Pie 28 x86”,目标为Android 9.0,然后单击“Next”按钮。系统映像如果没有安装,Android Studio会自动下载,可能需要较长的时间,如图2-19所示。

图2-19 选择系统映像

6)接着验证AVD配置,在这个界面中会总结显示前几步选择的选项,并且允许进行修改,如图2-20所示。

图2-20 验证AVD配置

7)单击“Finish”按钮,完成AVD的创建。这时候在打开的虚拟设备列表窗口中会出现创建完成的虚拟设备,如图2-21所示。

图2-21 虚拟设备列表

8)接下来要让应用在创建的AVD上运行。在“Run”菜单下,选择“Run ‘app’”命令,如图2-22所示。

图2-22 选择运行应用

9)选择部署的设备,当前可用的设备就是前面创建的“Nexus 5X API 28”。单击“OK”按钮,启动虚拟设备运行应用。勾选“Use same selection for future launches”复选框,下次该界面会自动跳过,默认选择这次所选的设备,如图2-23所示。

图2-23 选择运行设备

系统启动后,自动安装运行SmartFactory应用,如图2-24所示。

图2-24 应用运行界面

选择运行应用时并不是只运行SmartFactory这个应用,它还会运行应用所需的所有预备任务。下面说明应用编译、打包、部署和运行的过程,如图2-25所示。

图2-25 运行过程

①Java源文件编译为字节码。

②创建一个Android应用包或APK文件。APK文件包含编译的Java文件以及应用所需的库和资源。

③如果模拟器还未运行,会启动模拟器并加载。

④一旦启动模拟器并加载AVD,会将APK文件上传到AVD并安装。

⑤AVD启动应用关联的主活动。AVD屏幕上会显示应用,可以开始测试。

可以在控制台上查看应用运行的进度。启动AVD通常需要几分钟,可以使用Android Studio控制台查看应用运行的过程,控制台详细记录了Gradle构建系统的过程,如果发生错误,可以通过控制台查看具体情况,如图2-26所示。

图2-26 从控制台查看进度

从控制台可以看到过程如下。

①Android Studio启动模拟器,加载AVD,并安装应用。

②应用启动时,从MainActivity.java创建一个活动。

③这个活动指定它要使用布局activity_main.xml。

④活动告诉Android在屏幕上显示布局。另外会显示文字“Hello World!”。