Loading

ArcGIS for Android入门(Java):初体验

准备工作

开发工具:Android Studio
环境:jdk 11
(首次接触安卓开发,可能有的地方不太对,还请给位大佬多多指点)

项目搭建

打开Android Studio,点击New Project,选择一个空白的模板后点击下一步;
image

填写自己的项目信息,后点击完成(Language记得选Java,Minimum SDK选择API 23),点击完成后等待IDE构建完成;
image

依赖引入

打开settings.gradle,添加如下依赖;添加后点击Sync Now更新同步;

maven { url 'https://esri.jfrog.io/artifactory/arcgis' }

image

打开build.gradle(Module),添加以下依赖;

implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'

将JavaVersion改为11,并配置如下代码;添加后点击Sync Now更新同步;

packagingOptions {
    resources {
        excludes += "META-INF/DEPENDENCIES"
    }
}
buildFeatures {
    viewBinding true
}

image

地图展示

新建MainActivity与activity_mian文件

package com.newmap.myapplication;

import android.os.Bundle;

import androidx.appcompat.app.AppCompatActivity;

import com.esri.arcgisruntime.layers.ArcGISVectorTiledLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.view.MapView;

public class MainActivity extends AppCompatActivity {

    private MapView mMapView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_mian);

        mMapView = findViewById(R.id.mapView);
        // 这里切换成自己的内网地图地址
        String vecUrl = "http://192.168.0.19/server/rest/services/Hosted/DigitalMap/VectorTileServer";
        ArcGISVectorTiledLayer vectorTiledLayer = new ArcGISVectorTiledLayer(vecUrl);
        ArcGISMap map = new ArcGISMap(new Basemap(vectorTiledLayer));
        mMapView.setMap(map);
    }

}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <!-- MapView控件 -->
    <com.esri.arcgisruntime.mapping.view.MapView
        android:id="@+id/mapView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </com.esri.arcgisruntime.mapping.view.MapView>

</RelativeLayout>

最终的目录结构
image

配置AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" /><!--联网权限 -->
<uses-feature android:glEsVersion="0x00020000" android:required="true" /><!--OpenGL ES支持 -->

在application中添加如下配置

        <activity
            android:name="com.newmap.myapplication.MainActivity"
            android:label="@string/app_name"
            android:theme="@style/Theme.AppCompat.NoActionBar"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

image

连接手机点击运行即可在手机上安装示例程序,打开安装的APP就可以看见地图;
image

posted @ 2022-07-21 10:15  路遥_13  阅读(597)  评论(0编辑  收藏  举报