ArcGIS Runtime SDK for Android 10.2.5版本在年前發布,其中1個重大的變化是:新版本使用了新的開發環境,在10.2.5版本中Esri使用了官方提供的新的Android開發工具Android Studio,跟上時期的步伐,而且ArcGIS Runtime SDK for Android在Bintray平臺上創建了Esri自己的Maven倉庫。在Bintary平臺上可以快速方便的發布我們自己的軟件版本,最值得欣喜的是,Esri的Android項目現在通太高大上的Gradle進行構建,通過Android Studio我們之間創建Gradle項目,下面我們來看看如何搭建新的ArcGIS Runtime SDK forAndroid開發環境。
Google官方對Android的開發建議使用Android Studio工具,該工具有哪些優勢在這里就不在進行論述了,感興趣的可以去百度或Google搜索1下,除Android Studio我們固然還可使用Intellij IDEA這個開發工具,不過Intellij IDEA是收費的工具,下面列出這兩個工具的下載地址:
下載地址:http://developer.android.com/sdk/index.html
下載地址:http://www.jetbrains.com/idea/download/
安裝步驟很常規,雙擊AndroidStudio的安裝程序,采取默許的安裝目錄,點擊下1步直至完成。安裝進程截圖以下:
點擊finish完成安裝
選擇第1項,進行配置:
Gradle是近來比較流行的1個系統構建工具,你可以通過編譯自己的構建文件(build.gradle)來自定義構建流程。1個Gradle項目的構建文件是在項目的根目錄下,您可以在項目的根目錄下找到構建文件(build.grade)。在開發ArcGIS for Android的Gradle項目時需要配置兩部份的依賴管理內容:
1) 配置project的ArcGISRepository(Esri ArcGIS maven)倉庫位置
2) 配置appmodule 的ArcGIS Runtime SDK for Android依賴。
打開根目錄下的構建配置文件build.gradle文件,添加倉庫配置,以下:
allprojects {
repositories {
jcenter()
// Add the following arcgis repository
maven {
url'http://dl.bintray.com/esri/arcgis'
}
}
}
是否是很簡單,這樣你所需的ArcGIS的jar包就會自動下載到本地的倉庫里了,下次再建項目時需要援用ArcGIS 的jar時,他會去你本地直接查找相干jar引入到你的項目里,是否是很方便。
App Module中的build.gradle文件合適用來放特殊的指令和任務。1個ArcGIS Android app需要ArcGIS Android API library工程AAR bundle。1旦在project級別的build.gradle文件中配置好了ArcGIS的倉庫,則可以再這個文件中聲明ArcGIS Android的依賴。
dependencies {
...
// Add the ArcGIS Android 10.2.5 API
compile 'com.esri.arcgis.android:arcgis-android:10.2.5'
}
援用arcgis的jar進行項目編譯。
在生成APK時我們可能不希望將1些文件打包到APK中,這時候我們可通過下面的配置將所需文件排除APK文件中:
packagingOptions{
exclude 'META-INF/LGPL2.1'
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
}
對絕大多數的ArcGIS Androidapps的利用幾近都需要網絡的支持;也有1些利用可能會需要訪問裝備的sdcard,需要對該卡有讀寫的權限;除此對GIS來講最經常使用的功能就是定位了所有,利用應當具有定位權限。ArcGIS Android apps的MapView使用了OpenGL2.x,所以在配置文件中還需添加OpenGL的支持,因此利用的配置文件最少包括下面的配置信息:
<uses-permissionandroid:name="android.permission.INTERNET" />
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
OK到此環境配置結束,不用再到處拷貝jar是否是很欣喜。