3.1、Android Studio 项目概览

作者: Android那些事儿 | 来源:发表于2017-07-24 15:41 被阅读51次

    文章摘要
    1、 Android 模块的概念
    2、Android 视图中,项目文件简介
    3、项目视图,以及项目中文件介绍
    4、项目结构Project Structure 简介
    5、Modules 设定与配置依赖等


    英文文献

    Android Studio 中的一个项目包含您为应用定义工作区所需的一切内容,从源代码和资源到测试代码和构建配置,应有尽有。当您启动新项目时,Android Studio 会为您的所有文件创建所需结构,然后使其在 IDE 左侧的 Project 窗口中可见(点击 View > Tool Windows > Project)。本页面将概括介绍您的项目内的主要组件。

    一、模块

    模块是源文件和构建设置的集合,允许您将项目分成不同的功能单元。您的项目可以包含一个或多个模块,并且一个模块可以将其他模块用作依赖项。每个模块都可以独立构建、测试和调试。

    如果在自己的项目中创建代码库或者希望为不同的设备类型(例如电话和穿戴式设备)创建不同的代码和资源组,但保留相同项目内的所有文件并共享某些代码,那么增加模块数量将非常有用。

    您可以点击 File > New > New Module,向您的项目中添加新模块。

    Android Studio 提供了几种不同类型的模块:

    1.1、Android 应用模块

    为应用的源代码、资源文件和应用级设置(例如模块级构建文件和 Android 清单文件)提供容器。在您创建新项目时,默认的模块名称将是“app”。
    在 Create New Module 窗口中,Android Studio 提供了以下应用模块:

    • Phone & Tablet Module
    • Android Wear Module
    • Android TV Module
    • Glass Module

    每种模块都提供了基础文件和一些代码模板,非常适合对应的应用或设备类型。

    1.2、库模块

    为您的可重用代码提供容器,您可以将其用作其他应用模块的依赖项或者导入到其他项目中。库模块在结构上与应用模块相同,但在构建时,它将创建一个代码归档文件而不是 APK,因此无法安装到设备上。
    在 Create New Module 窗口中,Android Studio 提供了以下库模块:

    • Android 库:这种类型的库可以包含 Android 项目中支持的所有文件类型,包括源代码、资源和清单文件。构建结果是一个 Android 归档 (AAR) 文件,您可以将其作为 Android 应用模块的依赖项添加。
    • Java 库:此类型的库只能包含 Java 源文件。构建结果是一个 Java 归档 (JAR) 文件,您可以将其作为 Andriod 应用模块或其他 Java 项目的依赖项添加。
    1.3、Google Cloud 模块

    为您的 Google Cloud 后端代码提供容器。此模块可以为使用简单 HTTP、Cloud Endpoints 和云消息传递连接到您的应用的 Java App 引擎后端添加所需的代码和依赖项。您可以开发您的后端,提供应用所需的云服务。

    利用 Android Studio 创建和开发您的 Google Cloud 模块,您可以在同一个项目中管理应用代码和后端代码。您也可以在本地运行和测试后端代码,并使用 Android Studio 部署 Google Cloud 模块。

    如需了解有关添加 Google Cloud 模块的详细信息,请参阅添加 App 引擎 Java Servlet 模块。如需了解有关运行和部署 Google Cloud 模块的详细信息,请参阅运行、测试和部署后端

    一些人也将模块称为子项目,完全没有问题,因为 Gradle 也将模块称为项目。例如,在创建库模块并且希望以依赖项的形式将其添加到您的 Android 应用模块时,您必须按如下所示进行声明:

    dependencies {
      compile project(':my-library-module')
    }
    

    二、项目文件


    默认情况下,Android Studio 会在 Android 视图中显示您的项目文件。此视图无法反映磁盘上的实际文件层次结构,而是按模块和文件类型组织,简化项目主要源文件之间的导航,同时将不常用的特定文件或目录隐藏。与磁盘上的结构相比,一些结构变化包括:

    • 在顶级 Gradle Script 组中显示项目中与构建相关的所有配置文件。
    • 在模块级组(如果您为不同的产品风味和构建类型使用不同的清单文件)中显示每个模块的所有清单文件。
    • 在一个组中显示所有备用资源文件,而不是按照资源限定符在不同的文件夹中显示。例如,所有密度版本的启动器图标将并排显示。

    在每个 Android 应用模块内,文件显示在以下组中:

    • manifests
      包含 AndroidManifest.xml 文件。
    • java
      包含 Java 源代码文件(包括 JUnit 测试代码),这些文件按软件包名称分隔。
    • res
      包含所有非代码资源,例如 XML 布局、UI 字符串和位图图像,这些资源将分成对应的子目录。如需了解有关所有可能的资源类型的详细信息,请参阅提供资源

    三、项目视图

    要查看项目的实际文件结构(包括 Android 视图下隐藏的所有文件),请从 Project 窗口顶部的下拉菜单中选择 Project。

    选择 Project 视图后,您会看到更多文件和目录。最重要的一些文件和目录如下所示:

    ├── app
    │   ├── build   包含构建输出。
    │   ├── libs    包含私有库。
    │   └── src 包含模块的所有代码和资源文件,分为以下子目录:
    │       ├── androidTest 包含在 Android 设备上运行的仪器测试的代码。
    │       │   └── java
    │       │       └── hailouwang
    │       ├── main    包含“主”源集文件:所有构建变体共享的 Android 代码和资源(其他构建变体的文件位于同级目录中,例如调试构建类型的文件位于 src/debug/ 中)。
    │       │   ├── AndroidManifest.xml 说明应用及其每个组件的性质。
    │       │   ├── java    包含 Java 代码源。
    │       │   │   └── hailouwang
    │       │   ├── jni 包含使用 Java 原生接口 (JNI) 的原生代码。
    │       │   ├── gen 包含 Android Studio 生成的 Java 文件,例如您的 R.java 文件以及从 AIDL 文件创建的接口。
    │       │   ├── assets  
    包含应原封不动地编译到 .apk 文件中的文件。您可以使用 URI 像浏览典型文件系统一样浏览此目录,以及使用 AssetManager以字节流形式读取文件。例如,此位置非常适合纹理和游戏数据。
    │       │   └── res 包含应用资源,例如可绘制对象文件、布局文件和 UI 字符串。
    │       └── test    包含在您的主机 JVM 上运行的本地测试的代码。
    │           └── java
    │               └── hailouwang
    │                   └── demosforapi
    │   ├── build.gradle    定义模块特定的构建配置。 
    ├── build.gradle    定义适用于所有模块的构建配置。此文件已集成到项目中,因此您应当在所有其他源代码的修订控制中保留这个文件。
    

    四、项目结构设置

    要更改 Android Studio 项目的各种设置,请点击 File > Project Structure,打开 Project Structure 对话框。此对话框包含以下部分:

    • SDK Location:设置您的项目使用的 JDK、Android SDK 和 Android NDK 的位置。
    • Project:设置 Gradle 和 Android Plugin for Gradle 的版本,以及存储区位置名称。
    • Developer Services:包含 Google 或其他第三方的 Android Studio 附加组件的设置。请参阅下面的 Developer Services
    • Modules:允许您编辑模块特定的构建配置,包括目标和最低 SDK、应用签名和库依赖项。请参阅下面的 Modules

    五、Developer Services

    Project Structure 对话框的 Developer Services 部分包含可为应用使用的多种服务的配置页面。本部分包含以下页面:

    • AdMob:允许您启用 Google 的 AdMob 组件,此组件可以帮助您了解用户,并向他们显示量身定制的广告。
    • Analytics:允许您启用 Google Analytics(分析),此组件可以帮助您衡量用户在各种设备和环境中与您应用的互动。
    • Authentication:允许用户通过 Google Sign-In 服务使用其 Google 帐号登录您的应用。
    • Cloud:允许您为应用开启基于云的 Firebase 服务。
    • Notifications:允许您使用 Google Cloud Messaging 在您的应用与服务器之间通信。

    开启这些服务中的任何一项都可能使 Android Studio 向您的应用中添加所需依赖项和权限。如果您启用相关服务,每个配置页面都会列出 Android Studio 进行的以上操作及其他操作。

    六、Modules

    借助 Modules 设置部分,您可以为项目的每个模块更改配置选项。每个模块的配置页面分成以下标签:

    • Properties:指定编译模块所用的 SDK 和构建工具的版本。
    • Signing:指定用于签署您的 APK 的证书。
    • Flavors:允许您创建多个构建风味,其中每个风味指定一组配置设置,例如模块的最低和目标 SDK 版本,以及版本代码和版本名称。例如,您可以定义一个最低 SDK 为 15、目标 SDK 为 21 的风味,以及另一个最低 SDK 为 19、目标 SDK 为 23 的风味。
    • Build Types:允许您创建和修改构建配置,如配置 Gradle 构建中所述。默认情况下,每个模块都有调试发布构建类型,不过您可以根据需要定义更多类型。
    • Dependencies:列出此模块的库、文件和模块依赖项。您可以通过此窗格添加、修改和删除依赖项。如需了解有关模块依赖项的详细信息,请参阅配置 Gradle 构建

    相关文章

      网友评论

        本文标题:3.1、Android Studio 项目概览

        本文链接:https://www.haomeiwen.com/subject/tfebkxtx.html