《ArcGIS Runtime SDK for Android开发笔记》——(6)、基于Android Studio的ArcGIS Android工程结构解析

一、前言

Android Studio 是第一个Google官方的 Android 开发环境。其余工具,例如 Eclipse,在 Android Studio 发布以前已经有了大规模的使用。为了帮助开发者转向 Android Studio,谷歌已经写出一套迁移指南。Google 同时也发布声明称,在接下来的几个月里,他们会为 Android Studio 增长一些性能工具,Eclipse 里现有的 Android 工具会经过 Eclipse 基金会继续支持下去。php

同时为了简化 Android 的开发力度,Google 决定将重点建设 Android Studio 工具。Google 会在今年年末中止支持其余集成开发环境,好比 Eclipse。html

对于ArcGIS Runtime SDK for Android开发来讲,从2015年1月15日,发布ArcGIS Runtime SDK for Android v10.2.5版本开始。默认支持android studio开发环境,示例代码开发环境也基于Android Studio进行了从新的调整。Eclipse插件被弃用。而且再也不提供的Eclipse IDE工具插件的形式,可是,它是能够继续使用jar包引用方式经过Eclipse完成开发工做。因此咱们针对目前主流的开发环境,对ArcGIS Android工程结构作一个简单解析。java

 

二、工程结构解析

在Android Studio中,提供了如下几种项目结构类型用来显示项目资源android

  • Project:——Project 视图,按照Windows文件夹的样子,显示全部项目资源
  • Packagers:—— 包管理视图,按照包名的分类,显示全部项目资源(图片资源按文件夹的所属关系显示)
  • Scratches:——暂时不知道是什么,欢迎补充
  • Android:——Android 视图(默认的显示方式)
  • Project Files:——Project文件视图,这里仅显示工程及模型的主要信息
  • Problems:——问题视图,编译阶段有问题的文件会显示在此窗口
  • Production:——成果视图,这里仅显示项目中的Moudle
  • Tests:——测试视图,AndroidStudio会把自动生成的工程测试类显示在此窗口

 

 

2.一、Android结构类型

建立一个新的ArcGIS Runtime SDK for Android工程以后,展开工程,能够看到整个android工程目录以下图所示:windows

根据上图,能够发现ArcGIS项目与普通的Android项目基本相同,下面来总体介绍一下ArcGIS Android的项目结构:android-studio

1)   manifests文件夹网络

该文件夹下只有一个清单文件。AndroidManifest.xml是Android应用程序中最重要的文件之一。它是Android程序的全局配置文件,是每一个 android程序中必须的文件。描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,同时定义了app的用户权限信息,例如:可否访问网络,可否访问GPS,可否访问存储等。app

2)   java文件夹eclipse

存放java源码的目录,目录里的文件是根据package结构管理的。ide

  • com.gis_luq.hellowword  源代码目录
  • com.gis_luq.hellowword (androidTest)单元测试目录

3)   res文件夹

存放应用程序所用到的资源文件,配置信息。

  • Ÿ   drawable文件夹——放置应用程序图标信息,通常分为mdpi、hdpi、xhdpi、xxhdpi。
  • Ÿ   layout文件夹——放置应用程序UI布局组件。
  • Ÿ   menu文件夹——放置UI菜单组件。
  • Ÿ   values文件夹——dimens.xml(UI组件布局位置信息)、string.xml(文本信息)、styles.xml(样式信息)

4)   Gradle Scripts(Gradle构建脚本)

经过编译本身的构建文件(build.gradle)来自定义构建流程。

  • Ÿ   build.gradle(Project:HelloMap)——工程级别的构建脚本(ArcGIS Maven仓库的位置一把设置在这里)
  • Ÿ   build.gradle(Module:app)——组件级的构建脚本(ArcGIS Runtime的编译版本,打包选项设置通常在这)
  • Ÿ   proguard-rules.pro(ProGuard Rules for app)——混淆规则
  • Ÿ   gradle.properties(Project Properties)——项目范围Gradle设置(项目中包含的Moudle)
  • Ÿ   settings.gradle(Project Settings)——定义项目包含哪些模块
  • Ÿ   local.properties(SDK Location)——SDK/NDK配置信息

 

2.二、 Project结构类型

按照Windows文件夹的样子,显示全部项目全部资源信息


1) Main Project(HelloMap)——顶级文件夹,项目根目录

这将是整个项目工做区(仅局限于与项目相关的内容)。例:HelloMap是HelloWorld应用程序的名称,文件夹下包括项目全部内容

2) .gradle

Gradle构建系统的相关设置信息。

3) .idea

Android Studio (AS)特定的项目元数据信息存储文件. (相似于Eclipse 中的project.properties文件)

3) app

  项目模块信息

  • build——app模块build编译输出的目录
  • libs——app模块的依赖库
  • src——app模块的代码文件
  • build.gradle ——app模块的gradle编译文件
  • app.iml ——app模块的配置文件
  • proguard-rules.pro ——app模块proguard文件

4) build

整个工程的的编译输出目录

5) gradle

gradle的wrapper包的存储位置,及配置信息。

6) 其余

  • build.gradle ——项目的gradle编译文件
  • settings.gradle ——定义项目包含哪些模块
  • gradlew—— 编译脚本,能够在命令行执行打包
  • local.properties—— SDK/NDK配置信息
  • helloMap.iml ——项目的配置文件

7) External Libraries

项目依赖的Lib, 编译时自动下载的。例如须要的android SDK支持,jdk,支持,ArcGIS Runtime SDK支持,都会显示在这里。

 

三、参考资料

http://www.android-studio.org/index.php/2013-09-23-03-56-08/news/171-android-studio-cover-eclipse

http://www.cnblogs.com/gis-luq/p/4765993.html

http://www.mayflygeek.com/archives/145/?utm_source=tuicool

http://jileniao.net/androidstudio-1-windows.html

http://blog.csdn.net/meegomeego/article/details/38555943

相关文章
相关标签/搜索