arcgis runtime for android 100.13.0 入门系列,一、初步引入与运行

2022-09-09 11:20:08 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

这是我来到csdn以来写的第一篇文章,希望能通过文字能把我的学习经过与心得分享给大家。我使用的是Kotlin来编写代码,我将默认各位具有一定的Android编程基础。言归正传,我们接下来要做的第一件事情就是使用AndroidStudio来创建一个空的新项目了

我接下来的操作都是遵循arcgis android官方进行搭建的,读者看到的时候可能已经出了新的版本了,不过应该是小版本,arcgis android主体代码结构应该是不会变的,请放心阅读与搭建

我喜欢将AS的视图切换为Project,创建完项目后一般我习惯更改gradle的依赖下载地址,以此来加速下载后续所引入的依赖框架与各种包。 由于AS创建新项目使用的gradle是7.0以上版本,需要在build.gradle和settings.gradle两个文件中的repositories节点覆盖成为下图中的地址

代码语言:javascript复制
repositories {
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/jcenter' }
    maven { url 'https://maven.aliyun.com/repository/mavenCentral' }
    maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
    maven { url 'https://maven.aliyun.com/nexus/content/repositories/releases/'}
    maven { url 'https://jitpack.io' }
    maven { url 'https://esri.jfrog.io/artifactory/arcgis' }
    google()
    mavenCentral()
}

其中 maven { url ‘https://esri.jfrog.io/artifactory/arcgis’ } 就是用来在线引入 arcgis的,其他的地址是用来辅助加速下载的

开始引入arcgis-android:100.13.0

代码语言:javascript复制
implementation 'com.esri.arcgisruntime:arcgis-android:100.13.0'

到了这里还不足以完成引入,还需要在清单文件加上权限和OpenGL ES 2.x:相关的设置

代码语言:javascript复制
<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" />

<uses-feature android:glEsVersion="0x00020000" android:required="true" />

然后点击同步代码,不出意外会提示报错如下,gradle中加上以下排除规则即可

代码语言:javascript复制
packagingOptions {
	exclude 'META-INF/DEPENDENCIES'
	exclude 'META-INF/NOTICE'
	exclude 'META-INF/LICENSE'
	exclude 'META-INF/LICENSE.txt'
	exclude 'META-INF/NOTICE.txt'
}

再次同步编译,一切顺利运行不报错即代表引入arcgis-android:100.13.0成功了。

回到代码,我稍微改造了一下项目,把FirstFragment重名为HomeFragment,布局如下

我使用了viewBinding来代替findViewById,请不要感觉到惊讶

高版本如果不设置ArcGISRuntimeEnvironment.setApiKey会运行空白,你可以自行去创建,也可以用我的ApiKey来运行

代码语言:javascript复制
ArcGISRuntimeEnvironment.setApiKey("AAPK1546a8ef92424ed9bd424efb2da6ad29_KM7OcTTXgJPAObA7Boa_PEv3gm6dF8UDMXb9LMmBRFtsCNsyaWomRnBwjIs7KtN")

ArcgisAndroid: arcgis runtime for android 100.13.0 入门系列

https://gitee.com/tanqidi/ArcgisAndroid

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/160584.html原文链接:https://javaforall.cn

0 人点赞