我正在使用Mapbox SDK(当前版本为9.5.0)创建一个Android导航应用程序,并已成功初始化了地图视图并跟踪用户的当前位置。到目前为止,我没有遇到未解析的导入语句或任何实际问题。我目前正在开发的功能是允许用户在地图上选择位置点,该点将放置一个地图标记并返回标记的坐标。为了加入这个功能,我一直在遵循Mapbox文档,具体来说是此教程。
现在我已经将这段新代码加入到我的应用程序中,但发现了一些问题,有相当多的对象无法解决,为了研究这个问题,我去查看了我的Java文件顶部的导入语句,并发现了一些不能正常工作的导入,那就是:
import com.mapbox.api.geocoding.v5.GeocodingCriteria;
import com.mapbox.api.geocoding.v5.MapboxGeocoding;
import com.mapbox.api.geocoding.v5.models.CarmenFeature;
import com.mapbox.api.geocoding.v5.models.GeocodingResponse;
以上所有导入都在“api”下方具有红色波浪线,并显示错误:“无法解析符号'api'”。一些其他错误的导入如下:
import com.mapbox.core.exceptions.ServicesException;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import timber.log.Timber;
我不确定为什么所有这些特定的导入都无法解析,因为我的其他Mapbox导入还没有给我任何问题。我怀疑可能是我的Gradle文件中缺少依赖项或实现,但是我已经按照文档指南尽力而为了,所以除非我遗漏了一些重要的东西,否则我不知道原因可能是什么。以下是我在gradle文件中添加的Mapbox依赖和实现:
项目级别build.gradle:maven {
url 'https://api.mapbox.com/downloads/v2/releases/maven'
authentication {
basic(BasicAuthentication)
}
credentials {
username = 'mapbox'
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: "my secret password"
}
}
而在我的应用级 build.gradle 文件中:
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.5.0'
如果有人能够想到我的问题可能是什么,我会非常感激任何帮助。
implementation('com.mapbox.mapboxsdk:mapbox-android-sdk:9.3.0'){ exclude group: 'group_name',module:'module_name' }
- IntelliJ Amiyaimplementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.3.0'
。然后进行清理和重建。 - IntelliJ Amiya