我正在使用 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;
Run Code Online (Sandbox Code Playgroud)
上述导入在“api”下都有一条红线,并给出错误:“无法解析符号'api'”。其他一些错误的导入是:
import com.mapbox.core.exceptions.ServicesException;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import timber.log.Timber;
Run Code Online (Sandbox Code Playgroud)
我不确定为什么所有这些特定的导入都没有得到解决,因为我所有其他 Mapbox 导入还没有给我带来任何问题。我怀疑我的 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"
}
}
Run Code Online (Sandbox Code Playgroud)
在我的应用程序级 build.gradle 中:
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.5.0'
Run Code Online (Sandbox Code Playgroud)
如果有人知道我的问题可能是什么,我将非常感谢任何帮助。
我在 Google Play 商店中有一个应用程序,最近我更新了该应用程序。当我测试时,一切都很好,但某些 API 28 及更高版本的设备在 Android Vitals 中显示此崩溃。我搜索了 Stack Overflow,没有找到与我的案例相关的内容。
我试图检查整个代码库,但无法弄清楚。
谷歌没有提供太多信息,但 Android Vital 显示了这一点。
android.app.RemoteServiceException:
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2141)
at android.os.Handler.dispatchMessage (Handler.java:107)
at android.os.Looper.loop (Looper.java:237)
at android.app.ActivityThread.main (ActivityThread.java:8019)
at java.lang.reflect.Method.invoke (Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1100)
Run Code Online (Sandbox Code Playgroud)
提前致谢。