Android Studio官方文档之工程项目概述篇

来源:互联网 发布:淘宝海外代购法院传票 编辑:程序博客网 时间:2024/04/30 00:57

Android官方开发文档之工程项目概述(Manager Your Project)篇

此文由团队成员:peterZhang翻译,jkYishon审校。

1、前言

对于一个应用程序来说,不论是源代码和资源文件,还是到测试代码以及构建配置,项目包含的所有文件都在你规定的Android Studio中。

当你创建一个新项目的时候,Android Studio会为所有的文件创建一个必要的工程结构,并且让它们显示在IDE左侧的项目窗口中,单击(View > Tool Windows > Project)选项。本页概述了项目中的关键组件的概述。

2、模块(Modules)

模块包含了源代码和允许您按功能划分结构单元项目配置文件。在您的项目中可以有一个或者多个模块,并且一个模块可以作为另一个模块的依赖模块。每一个模块能被单独的构建、测试、调试。

当在自己的项目中创建代码库时,额外的模块通常是有用的或者当您想为不同设备类别而创建一系列不同的代码和资源文件时,例如一个手机和可穿戴设备,可以把所有的文件作用域在同一个项目并共享其中的一些代码。

此外模块也常常被用于在项目中创建代码库,代码库包括自己的代码和资源以及不同的策略类型的集合,,想要在所有的文件范围分享一些项目中相同的一些代码。

在项目中可以通过单击File > New > New Module来增加一个新的模块。

在Android Studio中提供了一些独特类型的模块:

(1)Android应用程序模块(Android app Module)

为你源代码、资源文件及代码和应用程序API等级设置(例如模块等级构建文件和清单文件)提供了一个容器。当您创建一个新的项目,默认的模块名称叫“app”。

在创建新的模块窗口中,AndoridStudio提供了下面一些app的模块

  • 手机模块(Phone & Table Module)

  • Android可穿戴模块(Android Wear Module)

  • Android电视模块 (Android TV Module)

  • 谷歌眼镜模块 (Glass Module)

他们都提供必要的文件和一些适合于相应的应用程序或设备类型的代码模板。

关于更多增加模块的信息,请看Add a Module for a New Device章节。

(2)库模块(Lirary modules)

为您的可重用代码提供一个容器,您可以使用它作为其他应用程序模块的依赖性或导入到其他项目中的一个容器。在结构上,一个库模块其实也是一个app模块,但是当构建的时候,它是编译成一个代码文档,而不是一个APK安装文件,因此不能在设备上来安装它。

创建一个新的模块窗口下,AndroidStudio提供了下面一些库模块。

  • Android库模块(Android Library)

这个类型的模块能包括所有文件类型并对Android项目提供支持,包括源码、资源文件和清单文件。它的构建结果是一个Android档案库文件,因此可以在应用模块中添加一个依赖。

  • Java模块(Java Library)

这个类型的模块能包括的仅仅是java文件,它的构建结果是一个jar文件,因此你能在应用程序或者java项目中添加一个依赖。

(3)谷歌云模块(Google Cloud module)

提供了一个谷歌云后端模块。这个模块使用了简单的HTTP使云端和云消息连接到你的应用程序。在开发时后端提供的云服务为你的应用程序提供支持。

使用Android Studio创建和开发时,谷歌云模块可以让应用程序的代码和后端代码在同一个项目中。你能运行和测试本地的后端代码。并且使用Android Studio配置你的谷歌云模块。

更多的谷歌云模块信息可以查看Adding an App Engine Java Servlet Module章节。部署一个谷歌云模块可以查看Running, Testing, and Deploying the Backend章节。

有些人也把模块作为子项目,这样很好,因为Gradle也可以为一个项目增加一个依赖库。例如,当你创建了一个库模块(library module)时,想去添加依赖,你必须按一下方式声明:

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

3、Project Files(项目文件)

这里写图片描述

默认情况下, Android Studio在Android视图上展示了项目文件。这个视图不能真实反映项目的层级关系,但是它能简化成有序的导航模块视图和文件类型,隐藏某些不常用的文件或目录。
,与磁盘上的结构相比有一些结构上的变化,包括以下:

  • Gradle Script组里显示了所有项目的构建配置文件。
  • 在每一个模块中的模块层组里显示所有manifest文件(当你有不同的清单文件和不同的产品型号和构建版本)。
  • 显示所有选择资源文件在一个组,而不是在单独的文件夹,例如所有的密度版本的图标。

在每个Android应用程序模块中,文件显示在下面的组中:

(1)清单文件(manifests)
包括了AndroidManifest.xml文件。

(2)java
包括了java源码文件和测试文件。

(3)资源(res)
包括了所有的xml布局文件,页面设计中的一些文字资源文件,不同尺寸的图片文件和一些类型相同的子文件夹。对于更多信息请看资源提供(Providing Resources)。

4、Android工程视图(The Android Project View)

这里写图片描述

选择工程窗口的下拉项就进入了工程视图,在工程视图中Android视图隐藏文件将会显示出来。

这时你能看见更多的文件和文件夹他们的构造如下:

模块名称(module-name)/

build/       包括了编译文件libs/    包括了资源库文件src/    包括了所有的源码文件和子模块他们有:    androidTest/        包括运行在设备上的监测工具的代码,更多信息请看Android测试文档(Android documentation)    main/        主文件夹包括了源码文件和构建不同类型安装包的资源文件(其他和主文件同级的文件夹例如src/debug是构建项目的调试类型的文件夹)    AndroidManifest.xml        清单文件是应用程序每个部分的描述,更多请看清单文档(AndroidManifest.xml documentation)    java/        包括了java源码           jni/        包含了本地代码的使用,更多信息请看Android NDK文档。    gen/        包含AndroidStudio产生的文件, 例如R文件和AIDL文件。    res/        包含了应用程序的资源文件, 例如图片文件, 布局文件, 字符文件。更多信息请看Application Resources    assets/        它所包括的文件将按原样打包进apk中,你能用AssetManager类像文件一样读取字节流或URI,例如,游戏数据。    test/        包含了运行在java虚拟机的测试数据    build.gradle (module)        这是构建配置中的一个特殊的模块build.gradle (project)    定义了所有模块的构建配置, 这个文件记录了完整的项目配置, 所以你可以在这个文件中控制版本和其他的资源代码。

对于更多的信息请看构建配置Configure Your Build章节.

5、项目结构设置

在您的Android Studio项目中改变不同的设置,可以打开Project Structure对话框点击 File > Project Structure,它包括了一下这些:

  • SDK位置(SDK Local):设置您项目中使用到的JDK、Android SDK、Android NDK的位置。

  • Project:设置项目为Gradle构建的。

  • Developer Services:包含从Google或者第三方增加组件的设置,具体请看Developer Services章节。

  • 模块(Modules):可以编辑模块的构建配置,和包括最小sdk版本的限制,增加库的依赖,具体请看Modules章节。

6、开发者服务(Developer Services)

  • AdMob:

    在你不懂或需要帮助的时候可以打开 AdMob 组件。

  • Analytics:

    当你的应用程序在不同设备和环境中运行时,如需帮助可以打开Analytics。

  • Authentication:

    可以让用户使用google账户进行登录

  • Cloud:

    允许用户使用云服务。

  • Notifications:

    允许用户可以使用云消息在应用程序和后台服务之间传递消息。如何你关联其他的服务或者转变服务都可能造成AndroidStudio去增加必要的依赖和权限在每一个配置页列表和活动中。

7、模块

在项目模块中,模块设置的部分能让你改变配置的选择,不同的模块设置页如下:

  • Properties:
    指定不同版本的SDK和工具构建模块

  • Signing:
    给应用程序签名

  • Flavors:
    可以创建多个不同的版本的安装文件,例如以指定最小的SDK版本构建,比方说最小SDK版本15和目标SDK版本21和最小SDK版本19目标SDK版本23或者版本名称构建

  • Build Types:
    允许创建和修改构建配置。默认情况下,每个模块都有调试和发布构建类型,但是您可以根据需要定义更多的。

  • Dependencies:
    列出了库,文件,这个模块和模块的依赖关系。您可以添加、修改和删除此窗格的依赖关系。模块依赖关系的更多信息,请参阅配置Gradle构建。

0 0
原创粉丝点击