《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

相關文章
相關標籤/搜索