《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

(最近要做个课设,顺便记录分享一些内容。)

一. 简介

1. 概述:ArcGIS Runtime SDK for Android是Esri公司开发的一种工具包,用于在Android设备上创建和部署地理信息系统(GIS)应用程序。它提供了一套强大的API,使开发者能够利用各种地理数据和功能,构建具有地图显示、地理查询、空间分析、图形编辑等功能的应用程序。

2. 用途:

(1)地图和位置应用程序开发:ArcGIS Runtime SDK for Android允许开发者构建基于地图的应用程序,从简单的地图显示到复杂的交互式地图应用,包括导航、地理定位、路径规划等功能;

(2)地理空间分析:开发者可以利用ArcGIS Runtime SDK for Android进行空间分析,如缓冲区分析、交叉分析、热点分析等;

(3)地理数据采集和编辑:SDK提供了功能强大的绘图和编辑工具,允许开发者创建和编辑地理要素,如点、线、面等,以支持数据采集和编辑工作流程;

(4)地理搜索和定位:ArcGIS Runtime SDK for Android提供了地理编码和逆地理编码功能,使应用程序能够根据地址或坐标获取位置信息,并将位置信息转换为可理解的地址描述;

(5)自定义地图和可视化:开发者可以使用SDK提供的符号、渲染器和样式来自定义地图的外观和可视化效果,以满足特定应用程序的需求;

(6)……

二. 基础环境安装与配置

1. 安装Java Development Kit(JDK)

(1)下载并安装JDK:从Oracle官网(https://www.oracle.com/java/technologies/downloads/)下载并安装;

(2)配置环境变量:首先在系统环境变量中设置“JAVA_HOME”变量,在“变量值”填写JDK的安装目录;然后将JDK的“bin”目录路径添加到“PATH”环境变量中。

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

(3)验证安装:打开命令行终端并输入“Java -version”命令,若安装成功JDK则会看到JDK版本号的输出。

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

2. 安装Android Studio(开发Android应用程序的集成开发环境(IDE):

        下载并安装Android Studio:从Android开发者网站(https://developer.android.com/studio)下载并安装(根据安装提示进行Android Studio安装即可)。

 

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

三. 在线部署ARCGISRuntime SDK

        (在线部署—Esri官方建议使用Gradle进行安装,它会从Esri的Maven仓库中安装所需的依赖项和SDK二进制文件;离线部署—如果你无法使用Gradle,可以手动下载SDK,然后通过包含AAR库和依赖项文件来手动将依赖项添加到你的项目中。参考:Get started | ArcGIS Runtime API for Android | ArcGIS Developers)

1. 创建Android项目:在Android Studio中创建一个新的Android项目,可选择空白模板或其他模板。

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

2. 设置Esri的maven仓库地址:在settings.gradle文件的dependencyResolutionManagement块中的repositories块添加Esri的Maven存储库URL。

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

repositories {
    maven {
        url 'https://esri.bintray.com/arcgis'
    }
}

 

3. 添加项目依赖

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

(1)在Module的build.gradle中的dependencies块中添加(将x.x.x替换为你想要使用的ArcGIS Runtime SDK版本号):

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

dependencies {
    implementation 'com.esri.arcgisruntime:arcgis-android:x.x.x'
}

 

 (2)在Module的build.gradle文件的android块中确保有以下指令来设置与Java 8语言特性的兼容性(新版本自带,不需要补充):

android {
  . . .
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
  . . .
}

 

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

 (3)在Module的build.gradle文件的android块中确保有一个buildFeatures块,用于启用视图绑定(view binding)功能:

android {
    . . .
    buildFeatures {
        viewBinding true
    }
    . . .
}

 

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

 (4)在Module的build.gradle文件中的android块中确保有一个packagingOptions块,用于排除META-INF\DEPENDENCIES文件的重复项。这个设置可以防止在输出中多次包含相同的文件而导致编译错误:

android {
    . . .
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
    }
    . . .
}

 

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

 4. 添加项目功能需要的权限许可和用户支持:

        在AndroidManifest.xml文件中,在 标签下,可以使用 标签添加权限许可;在 标签下,可以使用 、 等标签来声明应用程序所需的用户支持……

        (ArcGIS Android apps的MapView使用了OpenGL2.x,所以在android应用程序的配置文件AndroidManifest.xml中还需添加OpenGL的支持):

    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    
    

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

 5. 同步项目:完成上述更改后,点击Android Studio工具栏的 “Sync Project with Gradle Files” :

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

        运行加载后,在依赖库中检查是否有相应的依赖包:

《ArcGIS Runtime SDK for Android开发笔记1》——基于Android Studio构建ArcGIS Android开发环境(在线部署)

         

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/cc6b3c5944.html