ArcGIS for Android 开发环境搭建
ArcGIS for Android 开发环境搭建
1. 基础环境搭建
1.1. 安装JDK
-
安装
JDK8,并设置环境变量 -
在
cmd窗口输入java -version检查是否配置完成java -version java version "1.8.0_221" Java(TM) SE Runtime Environment (build 1.8.0_221-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
1.2. 安装IntelliJ IDEA
- 下载安装
IntelliJ IDEA

1.3. 下载Android SDK以及Google API
-
Android SDK:
-
Google API:
1.4. 创建Android模拟器
- 使用
AVD Manager创建Android模拟器

1.5. 在线配置ArcGIS SDK
-
配置project的
build.gradle在
allprojects部分添加Esri public maven repositorymaven { url 'https://esri.jfrog.io/artifactory/arcgis' } -
配置
app的build.gradle在
dependencies中添加implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0' -
点击 sync ,自动下载所需的文件
1.6. 离线配置ArcGIS SDK
-
将解压出来的
libs的子文件夹放到本地maven仓库-
在
project的build.gradle中添加本地maven仓库allprojects { repositories { mavenLocal() } } -
将所需的的依赖放工程目录的
libs目录下
-
-
将解压的文件直接放到项目文件中
- 将所需的的依赖放工程目录的
libs目录下 - 将解压出来的
libs的子文件夹放到工程src\main目录下的新建的文件夹
- 将所需的的依赖放工程目录的
1.7. 配置权限与Java版本
-
在
AndroidManifest.xml中的Application前添加所需权限代码//网络权限 <uses-permission android:name="android.permission.INTERNET" /> //存储权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> //位置权限 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> -
在
AndroidManifest.xml中的Application前声明要素所需OpenGL ES版本//use a MapView (2D) require at least OpenGL ES 2.x: <uses-feature android:glEsVersion="0x00020000" android:required="true" /> //use a SceneView (3D) require OpenGL ES 3.x: <uses-feature android:glEsVersion="0x00030000" android:required="true" /> -
在
appdbuild.gradle(Module:app)的android部分最后添加:compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
1.8. 构建测试
- 点击项目
build,若最后显示BUILD SUCCESSFUL,则基本环境已经搭建完成
2. 创建第一个应用
2.1. 创建新工程
-
新建一个空活动项目

-
选择语言、平台,修改命名等

2.2. 添加ArcGIS SDK
-
build.gradle (Project: <project name>)添加maven { url 'https://esri.jfrog.io/artifactory/arcgis' } -
build.gradle (Module: <module name>)添加implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0' -
Gradle更新:Sync Project with Gradle Files -
AndroidManifest.xml添加//网络权限 <uses-permission android:name="android.permission.INTERNET" /> //use a MapView (2D) require at least OpenGL ES 2.x: <uses-feature android:glEsVersion="0x00020000" android:required="true" /> -
在
appdbuild.gradle(Module:app)的android部分指定Java版本compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
2.3 添加MapView地图控件
-
修改
activity_main.xml,替换TextView<com.esri.arcgisruntime.mapping.view.MapView android:id="@+id/mapView" android:layout_height="fill_parent" android:layout_width="fill_parent" tools:ignore="MissingConstraints"> </com.esri.arcgisruntime.mapping.view.MapView>
2.4 设置地图
-
添加
private MapView mMapView; -
引用
import com.esri.arcgisruntime.mapping.view.MapView; (IDE可能会自动导入) -
在
onCreate事件中设置地图super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mMapView=findViewById(R.id.mapView); ArcGISMap map =new ArcGISMap(Basemap.Type.TOPOGRAPHIC,34.056295,-117.195800,16); mMapView.setMap(map); -
重载
onPause、onResume与onDestroy事件@Override protected void onPause() { mMapView.pause(); super.onPause(); } @Override protected void onResume() { super.onResume(); mMapView.resume(); }
2.5. 编译运行
点击运行后,Android模拟器中将打开生成的App


浙公网安备 33010602011771号