Reputation: 1402
Without any change in Mapbox-related classes, I'm having a crash right after running my app.
I have no clue what's causing this, and can't find any response anywhere.
These are my gradle dependencies:
compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:5.2.0-beta.3@aar'){
transitive=true
}
compile 'com.mapbox.mapboxsdk:mapbox-android-services:2.3.0-SNAPSHOT'
This is the crash log
FATAL EXCEPTION: main Process: com.example.myapp, PID: 16817 java.lang.NoSuchMethodError: No virtual method initialize(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Lcom/mapbox/services/android/telemetry/location/LocationEngine;)V in class Lcom/mapbox/services/android/telemetry/MapboxTelemetry; or its super classes (declaration of 'com.mapbox.services.android.telemetry.MapboxTelemetry' appears in /data/app/com.example.myapp-4RgMqGrrEFZc1X5nPn936g==/base.apk:classes84.dex) at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:58) at com.example.myapp.App.onCreate(App.java:128) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1118) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5791) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1661) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6541) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
11-02 10:10:35.386 16817-16817/com.example.myapp E/CrashlyticsCore: Failed to execute task. java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:206) at com.crashlytics.android.core.CrashlyticsExecutorServiceWrapper.executeSyncLoggingException(CrashlyticsExecutorServiceWrapper.java:44) at com.crashlytics.android.core.CrashlyticsUncaughtExceptionHandler.uncaughtException(CrashlyticsUncaughtExceptionHandler.java:251) at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068) at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1063) at java.lang.Thread.dispatchUncaughtException(Thread.java:1953)
Upvotes: 1
Views: 978
Reputation: 1402
After several hours struggling, I found there was some kind of dependencies conflict. Checking inside Mapbox.getInstance method, there was a LocationEngine parameter passed to MapboxTelemetry.getInstance that was not taken from the right package.
Long story short, these are the gradle dependencies needed to avoid this annoying crash:
compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:5.2.0-beta.3@aar'){
transitive=true
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-services'
}
compile ('com.mapbox.mapboxsdk:mapbox-android-services:2.3.0-SNAPSHOT') {
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-sdk'
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-telemetry'
}
I hope this helps anybody!
Upvotes: 1