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 repository

    maven {
    url 'https://esri.jfrog.io/artifactory/arcgis'
    }
  • 配置appbuild.gradle

    dependencies中添加

    implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
  • 点击 sync ,自动下载所需的文件

1.6. 离线配置ArcGIS SDK

  • 下载ArcGIS SDK

  • 将解压出来的libs的子文件夹放到本地maven仓库

    • projectbuild.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);
  • 重载onPauseonResumeonDestroy事件

        @Override
    protected void onPause() {
    mMapView.pause();
    super.onPause();
    } @Override
    protected void onResume() {
    super.onResume();
    mMapView.resume();
    }

2.5. 编译运行

点击运行后,Android模拟器中将打开生成的App

ArcGIS for Android 开发环境搭建的更多相关文章

  1. Qt for Android开发环境搭建及测试过程记录

    最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...

  2. Android开发环境搭建全程演示(jdk+eclipse+android sdk)

    全程演示android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本 一 相关下载 (1) java JDK下载: 进入该网页: http://java.sun.com/java ...

  3. Java、Android 开发环境搭建

    一.准备工作 为便于管理,将java开发工具集中到一个文件夹中.创建D:\javaDevE文件夹,JDK.Android-SDK.Eclipse.tomcat等都可以安装到这个文件夹中. 二.搭建Ja ...

  4. Android开发环境搭建相关文章列表(转载)

    Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1, ...

  5. Android开发环境搭建及常见问题解决方法

    转自: http://www.cnblogs.com/rwxwsblog/p/4769785.html 在移动互联网的时代,Android的份额早已超过了苹果.Android的出现无疑加速了移动互联网 ...

  6. Ionic Android开发环境搭建 下

    上篇 Ionic 安装完成了,由于要开发Android,所以必不可少需要继续搭建Android开发环境. 首先,下载并安装JDK.然后配置一下环境变量. 接着,下载并安装Android SDK.下载过 ...

  7. android 开发环境搭建 (转)

    最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是一直没有搭建开发环 境去学习,Android的更新速度比较快了,Android1 ...

  8. Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通

    原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...

  9. linux android开发环境搭建

    android开发环境搭建的一些有用链接:1.sdk manager的国内服务器http://www.cnblogs.com/huangjacky/p/4077982.html2.常见问题的解决htt ...

  10. android外包公司—技术分享:Android开发环境搭建(长年承接安卓应用外包)

    Android开发环境搭建 1.安装JDK 1.1.由于Android是基于java语言的.所以在开发过程中,首先要做的事儿就是安装JDK. 1.2.JDK的安装步骤: 设置环境变量:我的电脑---- ...

随机推荐

  1. 教你几个 Java 编程中的奇技淫巧

    枯燥的编程中总得有些乐趣,今天我们不谈论那些高深的技能,教你几个在编程中的奇技淫巧,说不定在某些时候还能炫耀一番呢. 1.找到最大值和最小值 不使用 if else switch 和三元运算符,在给定 ...

  2. 第三篇:前端基础之JavaScript

    前端基础之JavaScript   JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaS ...

  3. 关于jQuery的操作

    jQuery简介  简化了JS  ​ 类似于 后端 JDBC(操作数据库的基本API)   dbutils(封装JDBC)     xxx.jar 前端 JS                     ...

  4. pg_basebackup恢复:unrecognized configuration parameter "restore_command"

    问题描述:2022年最后一个工作日,时间过的真快,一晃又一年过去了,祝愿看到的各位元旦快乐. 使用pg_basebackup进行pg的备份恢复,在恢复的过程中,配置文件添加恢复的参数,一直启动报错. ...

  5. [R语言] R语言PCA分析教程 Principal Component Methods in R

    R语言PCA分析教程 Principal Component Methods in R(代码下载) 主成分分析Principal Component Methods(PCA)允许我们总结和可视化包含由 ...

  6. Squirrel状态机-从原理探究到最佳实践

    作者:京东物流 郑朋辉 1 简介 Squirrel状态机是一种用来进行对象行为建模的工具,主要描述对象在它的生命周期内所经历的状态,以及如何响应来自外界的各种事件.比如订单的创建.已支付.发货.收获. ...

  7. 【分析笔记】Linux 内核自旋锁的理解和使用原则

    自旋锁简单说明: 自旋锁主要解决在竞态并发下,保护执行时间很短的临界区.它只允许一个执行单位进入临界区,在该执行单位离开前,其它的执行单位将会在进入临界区前不停的循环等待(即所谓的自旋),直至该执行单 ...

  8. 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(6)-Charles安卓手机抓包大揭秘

    1.简介 Charles和Fiddler一样不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Charles也能截获 Android 和 Wind ...

  9. USACO 2023 January Contest, Bronze Problem 3. Moo Operations

    这道题目灰常简单,我们先从最简单的3个字符串开始 有以下几种情况: 可以看到,只有在中间是O的情况下才有可能变成MOO 辣么我们不妨在在s串中枚举这个中间 O 每枚举到一个就看看能不能用他的本身操作次 ...

  10. 【一句话】 OAuth 2

    OAuth 就是一种授权机制.数据的所有者告诉系统,同意授权第三方应用进入系统,获取这些数据.系统从而产生一个短期的进入令牌(token),用来代替密码,供第三方应用使用