原始文档地址下载:传送门(密码:3jfu)
API reference:传送门
本篇博客基于Android Studio, Arcgis Runtime 100.5.0, 截止博客发布时均为最新版本,下面直接开始环境的配置
- 首先添加Arcgis Runtime SDK的依赖,在项目的build.gradle文件中的allprojects节点下添加Arcgis maven代码仓库。
maven {
url 'https://esri.bintray.com/arcgis'
}
- 在app的build.gradle文件中添加如下依赖
implementation 'com.esri.arcgisruntime:arcgis-android:100.5.0'
3.设置Java版本兼容性,在app的build.gradle文件中添加compileOptions节点
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
- 添加权限和OpenGL要求
<!-- 3D地图需要至少OpenGL 3.0,2D地图需要至少OpenGL 2.0 -->
<uses-feature
android:glEsVersion="0x00030000"
android:required="true" />
<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" />
注意:Android6.0之后定位权限需要动态申请,暂时测试环境搭建时可以先不进行动态申请。
- MainActivity中添加代码
public class MainActivity extends AppCompatActivity {
private MapView mMapView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mMapView = findViewById(R.id.mv_zzu);
//加载地图,设置中心点坐标
ArcGISMap map = new ArcGISMap(Basemap.Type.TOPOGRAPHIC,34.817196,113.537310,16);
mMapView.setMap(map);
}
@Override
protected void onPause() {
super.onPause();
mMapView.pause();
}
@Override
protected void onResume() {
super.onResume();
mMapView.resume();
}
@Override
protected void onDestroy() {
super.onDestroy();
mMapView.dispose();
}
}
布局文件activity_main.xml如下
<com.esri.arcgisruntime.mapping.view.MapView
android:id="@+id/mv_zzu"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
部署后运行界面如下:
大家会发现这里的地图下方有Licensed For Developer Use Only
和Powered by Esri
,有点影像视觉效果,这里我们在MainActivity中添加如下代码:
ArcGISRuntimeEnvironment.setLicense("runtimelite,1000,rud4449636536,none,NKMFA0PL4S0DRJE15166"); //消除开发者水印
mMapView.setAttributionTextVisible(false); //隐藏Esri logo
实际开发中,消除开发者水印代码可以放在Application中,全局只要写一次即可,隐藏Logo代码需要在每个使用MapView控件的界面中写。
至此我们完成了基于Arcgis Runtime SDK for Android 100.5开发环境的搭建,后续将继续更新此系列博客。
系列博客对应Github项目地址:传送门