Guava List equalsImpl method is missing, causing a crash
See original GitHub issueUpdating to the latest version (v2.14.1) from v2.11.8 is causing NoSuchMethodError when calling stop
or setPlayWhenReady
on SimpleExoPlayer.
Stacktrace:
java.lang.NoSuchMethodError: No static method equalsImpl(Ljava/util/List;Ljava/lang/Object;)Z in class Lcom/google/common/collect/Lists; or its super classes (declaration of 'com.google.common.collect.Lists' appears in /data/app/nz.co.nuffie.android.crichq.debug-F5vmfXFZC-UlvORDHCviyA==/base.apk!classes8.dex)
at com.google.common.collect.ImmutableList.equals(ImmutableList.java:623)
at com.google.android.exoplayer2.ExoPlayerImpl.updatePlaybackInfo(ExoPlayerImpl.java:1225)
at com.google.android.exoplayer2.ExoPlayerImpl.setPlayWhenReady(ExoPlayerImpl.java:616)
at com.google.android.exoplayer2.SimpleExoPlayer.updatePlayWhenReady(SimpleExoPlayer.java:1992)
at com.google.android.exoplayer2.SimpleExoPlayer.setPlayWhenReady(SimpleExoPlayer.java:1496)
at nz.co.nuffie.android.crichq.video.VideoManager.prepareExoPlayer(VideoManager.java:114)
I’ve also tried updating to v2.12.3 (and 2.12.1). Similar crash (indexOfImpl is missing on List):
java.lang.NoSuchMethodError: No static method indexOfImpl(Ljava/util/List;Ljava/lang/Object;)I in class Lcom/google/common/collect/Lists; or its super classes (declaration of 'com.google.common.collect.Lists' appears in /data/app/nz.co.nuffie.android.crichq.debug-BxWHG_pgvtKE-xGwN0d2Xw==/base.apk!classes8.dex)
at com.google.common.collect.ImmutableList.indexOf(ImmutableList.java:391)
at com.google.common.collect.ImmutableList.contains(ImmutableList.java:401)
at com.google.android.exoplayer2.analytics.AnalyticsCollector$MediaPeriodQueueTracker.updateMediaPeriodTimelines(AnalyticsCollector.java:845)
at com.google.android.exoplayer2.analytics.AnalyticsCollector$MediaPeriodQueueTracker.onQueueUpdated(AnalyticsCollector.java:827)
at com.google.android.exoplayer2.analytics.AnalyticsCollector.updateMediaPeriodQueueInfo(AnalyticsCollector.java:140)
at com.google.android.exoplayer2.MediaPeriodQueue.lambda$notifyQueueUpdate$0$MediaPeriodQueue(MediaPeriodQueue.java:433)
at com.google.android.exoplayer2.-$$Lambda$MediaPeriodQueue$mWNPMcRbVVz2oDENMZzwGKF1Dk8.run(Unknown Source:6)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Does anyone have any idea what the issue could be?
Issue Analytics
- State:
- Created 2 years ago
- Comments:9 (4 by maintainers)
Top Results From Across the Web
org-drill/programming.org at master - GitHub
Answer. Yes, except in two cases: If you call System.exit(); If the JVM crashes first. ... Why is List.remove a good example of...
Read more >Diff - platform/external/kotlinx.coroutines - Google Git
+* Guava version in `kotlinx-coroutines-guava` updated to `28.0`. +* `setTimeout`-based JS dispatcher for platforms where `process` is unavailable (#1404).
Read more >The Java Module System - Library
present) but will crash later, when, for example, a class or method is missing. Because the module system is developed to exhibit consistent....
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Issue solved. Some old files from Guava from way back (before Android Studio) were in our project sitting and not being used. I deleted the lot, and that solved it! I’ve recently taken over the project hence why I didn’t know about the files.
ExoPlayer’s Guava dependency was introduced in 2.12.0 - that would explain why you don’t see problems before that: