2.2 软件安装
2.2.1 JDK的安装
JDK的安装步骤说明如下:
步骤01 下载JDK。通过Android系统架构可以知道,要进行开发需要下载并安装Java的开发环境。首先需要下载免费JDK软件包。Android SDK需要JDK 7以上版本,JDK包含一整套开发工具。由于Sun公司已经被Oracle公司收购,因此需要到Oracle公司的网站下载,下载地址是:http://www.oracle.com/technetwork/java/javase/downloads/index.html,值得注意的是,必须下载完整的JDK开发包,不可以只安装JRE运行版本,下载界面如图2.1所示。目前最新版本是JDK 10,但是为了更好的稳定性,建议使用JDK 8。
图2.1 Java JDK下载界面
步骤02 安装JDK。双击下载的可执行文件,接受许可后就可以安装了。安装过程比较简单,就不再展开描述了。
步骤03 配置Java环境变量。为了使用Java工具进行编译、运行,需要配置Java环境变量,采用相对路径的方法,需要设置的三个环境变量:JAVA_HOME、CLASSPATH和PATH。假设将JDK安装到了C:\JAVA\JDK8\路径下,则右击“我的电脑” | “属性” | “高级” | “环境变量”。
• 配置JAVA_HOME:JAVA_HOME=“C:\JAVA\JDK8\”。
• 配置CLASSPATH:CLASSPATH=“.;%JAVA_HOME%\jre\lib\rt.jar;”。
• 配置PATH:PATH=“%JAVA_HOME%\bin;”。
2.2.2 Android Studio
开发Android应用程序需要下载相关的Android SDK。到http://developer.Android.com/sdk/index.html开发网页,如图2.2所示,根据自己的操作系统下载Android SDK软件开发包。本书下载的是Android 7.0版本(API Level 24)。本书使用官方推荐的Android Studio进行开发,版本号是2.2.3,Gradle版本是2.3.3。
图2.2 Android SDK下载页
下载完成后,双击即可安装。Android Studio包含开发Android应用所需要的文件、运行环境及相关工具,如图2.3所示。
图2.3 Android Studio运行界面
Android Studio的“Tools”菜单下包含一个“Android”菜单项,如图2.4所示,单击其中的子菜单“SDK Manager”会启动SDK管理器。通过SDK管理器可以查看本机已经安装的Android SDK版本,如图2.5所示。
图2.4 Android子菜单
图2.5 SDK Manager
单击“Launch Standalone SDK Manager”会启动独立的SDK管理器,如图2.6所示,可完成对SDK的文档、工具等进行相应的安装和更新工作。
图2.6 独立的SDK管理器
2.2.3 创建AVD
在Android Studio中单击Tools|Android| AVD Manager命令,启动Android虚拟设备管理器,如图2.7所示。单击“Create Virtual Device”按钮,出现新建虚拟设备界面,如图2.8所示。总体而言,界面分为左中右三部分,左侧为TV、Wear、Phone、Tablet四个类别,说明Android 7对电视、可穿戴设备、手机和平板的开发都提供了支持;中间一列为针对左侧的某个类别已经建立好的虚拟设备的配置文件,可基于配置文件直接创建虚拟设备;右侧为配置文件的图形化描述,包括屏幕尺寸、现实精细度等。
图2.7 AVD管理器
图2.8 新建虚拟设备界面
例如,要基于Nexus S配置文件创建虚拟手机,其分辨率为480×800,现实效果为hdpi,需要在左侧单击“Phone”,在中间选择“Nexus S”配置文件,然后单击“Next”按钮,出现系统映像选择界面,如图2.9所示,选择系统映像文件,决定虚拟手机的Android系统版本、系统架构以及API等级。Android 7支持x86架构、x86_64架构、armeabi架构以及arm64架构,可根据需要进行选择。选择Nougat,API Level为24,架构为x86,单击“Next”按钮,进入虚拟设备参数配置界面,如图2.10所示,为虚拟手机设备起一个名字,并可对虚拟设备的分辨率、Android系统版本、横屏还是竖屏、3D绘图使用硬件加速还是软件加速等信息进行配置。最后单击“Finish”按钮,完成虚拟手机设备的创建。创建的虚拟设备会出现在AVD管理器中,单击运行即可启动,如图2.11所示。
图2.9 系统映像选择
图2.10 虚拟设备参数配置
图2.11 新创建的AVD
2.2.4 AVD与真机的区别
AVD提供了近乎真实手机的虚拟环境,以便于程序员进行调试。但是AVD毕竟不是真机,有些功能目前AVD尚不能模拟,比如:
• AVD不支持真实的电话接听和呼叫,但是可以通过控制台模拟电话呼叫。
• AVD不支持USB连接。
• AVD不支持相机/视频捕捉(输入)。
• AVD不支持耳机。
• AVD不支持蓝牙。
• AVD不能在运行时确认SD卡的插入和弹出状态。
• AVD不能确定电池的电量多少和充电状态。
• AVD不能确定连接状态。