Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Android] lateinit property player has not been initialized #1633

Closed
minhchienwikipedia opened this issue Aug 4, 2022 · 37 comments
Closed

Comments

@minhchienwikipedia
Copy link

minhchienwikipedia commented Aug 4, 2022

My users got issue lateinit property player has not been initialized, and Android only

image

This is my setupPlayer function

export const setupTrackPlayer = async () => {
    try {
        if (global.isSetupTrackPlayer) {
            // this method will only reject if player has not been setup yet
            await TrackPlayer.getCurrentTrack();
        } else {
            await TrackPlayer.setupPlayer();
            await TrackPlayer.updateOptions({
                stopWithApp: true,
                capabilities: [
                    Capability.Play,
                    Capability.Pause,
                    Capability.SkipToNext,
                    Capability.SkipToPrevious,
                    Capability.Stop,
                ],
                compactCapabilities: [Capability.Play, Capability.Pause],
                progressUpdateEventInterval: 2,
            });
            global.isSetupTrackPlayer = true;
        }
    } catch {
        showToast({ message: 'Setup player fail!', type: 'fail' });
    }
};

And I put this function in useEffect of App.js file

Can you guys help me to fix this issue?!

@minhchienwikipedia minhchienwikipedia changed the title lateinit property player has not been initialized [Android] lateinit property player has not been initialized Aug 4, 2022
@jspizziri
Copy link
Collaborator

What version are you using? Please try to reproduce in the example app.

@jspizziri
Copy link
Collaborator

Closing due to unresponsiveness.

@minhchienwikipedia
Copy link
Author

@jspizziri Sorry for replying late, I'm using version 2.2.0-rc3

@jspizziri
Copy link
Collaborator

@minhchienwikipedia Please upgrade to RC4 and retest

@anthonyeden
Copy link

anthonyeden commented Aug 25, 2022

I encountered a similar bug on the nightly release.

When it crashes, I'm trying to empty the queue and add one new item.

From logcat:

08-25 15:58:48.950 3513 3513 E AndroidRuntime: java.lang.RuntimeException: Unable to stop service com.doublesymmetry.trackplayer.service.MusicService@345f195: kotlin.UninitializedPropertyAccessException: lateinit property player has not been initialized
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.app.ActivityThread.handleStopService(ActivityThread.java:4689)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.app.ActivityThread.access$2100(ActivityThread.java:247)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2096)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:201)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.os.Looper.loop(Looper.java:288)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7839)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: Caused by: kotlin.UninitializedPropertyAccessException: lateinit property player has not been initialized
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at com.doublesymmetry.trackplayer.service.MusicService.onDestroy(MusicService.kt:471)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: at android.app.ActivityThread.handleStopService(ActivityThread.java:4669)
08-25 15:58:48.950 3513 3513 E AndroidRuntime: ... 9 more

@anthonyeden
Copy link

I think in my case, it's crashing when I do await TrackPlayer.getCurrentTrack(); if there's nothing playing.

@minhchienwikipedia
Copy link
Author

Confirmed the version 2.2.0-rc4 fixed my issue. Maybe you can try it @anthonyeden

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri I'm getting this error on v3.1.0 only after uploading new tracks and creating sounds for expo-av. It crashes without throwing an error so I only got the log on Android Studio logcat

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.appname, PID: 17129
    java.lang.RuntimeException: Unable to stop service com.doublesymmetry.trackplayer.service.MusicService@c92725: kotlin.UninitializedPropertyAccessException: lateinit property player has not been initialized
        at android.app.ActivityThread.handleStopService(ActivityThread.java:4375)
        at android.app.ActivityThread.access$1900(ActivityThread.java:237)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1956)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
     Caused by: kotlin.UninitializedPropertyAccessException: lateinit property player has not been initialized
        at com.doublesymmetry.trackplayer.service.MusicService.onDestroy(MusicService.kt:471)
        at android.app.ActivityThread.handleStopService(ActivityThread.java:4355)
        at android.app.ActivityThread.access$1900(ActivityThread.java:237) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1956) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7656) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 

@jspizziri
Copy link
Collaborator

@KrisLau can you reproduce this issue in the example app?

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri Ok i'll try that out! I also created an issue #1693

@jspizziri
Copy link
Collaborator

@KrisLau lets keep this on this issue. If you can reproduce it in the example app reliably I'll reopen this one and we can handle it right here.

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri Ok i'll close that one then!

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri Working on that repro but I just realized I forgot to include this part in the previous comment:

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.exoplayer2.Player$EventListener" on path: DexPathList[[zip file "/data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.appname-WW3ZfkfrLQC1Yzh1sb60_A==/base.apk"],nativeLibraryDirectories=[/data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.epicsports.epicmobile-WW3ZfkfrLQC1Yzh1sb60_A==/lib/x86, /data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.epicsports.epicmobile-WW3ZfkfrLQC1Yzh1sb60_A==/base.apk!/lib/x86, /system/lib, /system_ext/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at expo.modules.av.player.PlayerData.createUnloadedPlayerData(PlayerData.java:192) 
        at expo.modules.av.video.VideoView.setSource(VideoView.java:365) 
        at expo.modules.av.video.VideoView.setSource(VideoView.java:334) 
        at expo.modules.av.video.VideoViewManager.setSource(VideoViewManager.java:103) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at expo.modules.core.ViewManager.updateProp(ViewManager.java:90) 
        at expo.modules.adapters.react.views.ViewManagerAdapterUtils.setProxiedProperties(ViewManagerAdapterUtils.java:51) 
        at expo.modules.adapters.react.views.SimpleViewManagerAdapter.setProxiedProperties(SimpleViewManagerAdapter.java:49) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.facebook.react.uimanager.ViewManagersPropertyCache$PropSetter.updateViewProp(ViewManagersPropertyCache.java:93) 
        at com.facebook.react.uimanager.ViewManagerPropertyUpdater$FallbackViewManagerSetter.setProperty(ViewManagerPropertyUpdater.java:136) 
        at com.facebook.react.uimanager.ViewManagerPropertyUpdater.updateProps(ViewManagerPropertyUpdater.java:56) 
        at com.facebook.react.uimanager.ViewManager.updateProperties(ViewManager.java:48) 
        at com.facebook.react.uimanager.ViewManager.createViewInstance(ViewManager.java:144) 
        at com.facebook.react.uimanager.ViewManager.createView(ViewManager.java:77) 
        at com.facebook.react.uimanager.NativeViewHierarchyManager.createView(NativeViewHierarchyManager.java:281) 
        at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute(UIViewOperationQueue.java:194) 
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.dispatchPendingNonBatchedOperations(UIViewOperationQueue.java:1110) 
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:1081) 
        at com.facebook.react.uimanager.GuardedFrameCallback.doFrame(GuardedFrameCallback.java:29) 
        at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:175) 
        at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:85) 
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:970) 
        at android.view.Choreographer.doCallbacks(Choreographer.java:796) 
        at android.view.Choreographer.doFrame(Choreographer.java:727) 
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957) 
        at android.os.Handler.handleCallback(Handler.java:938) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7656) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 

@jspizziri
Copy link
Collaborator

@KrisLau it looks like you might be having an issue with multiple installations of ExoPlayer (expo-av + rntp). Please look at other issues for how people have worked around this.

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri I tried looking around at some other issues like #1652 but their error cause is different I think from their error log printing java.lang.IllegalStateException: Another SimpleCache instance uses the folder: /data/user/0/com.yc14ec100daa.www/cache/TrackPlayer whereas mine is java.lang.ClassNotFoundException: Didn't find class "com.google.android.exoplayer2.Player$EventListener". The first part of the error java.lang.RuntimeException: Unable to stop service com.doublesymmetry.trackplayer.service.MusicService@c92725 is the same though so i might be wrong.

Also not sure if this is relevant but I saw google/ExoPlayer#4902 which I'm not sure if it is related at all.

@KrisLau
Copy link

KrisLau commented Aug 31, 2022

@jspizziri Managed to repro it with a similar error at https://github.com/KrisLau/reproExoplayer. Error from Android Studio logcat:

2022-08-31 16:15:18.078 11671-11671/com.example D/AndroidRuntime: Shutting down VM
2022-08-31 16:15:18.079 11671-11671/com.example E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example, PID: 11671
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/exoplayer2/Player$EventListener;
        at expo.modules.av.player.PlayerData.createUnloadedPlayerData(PlayerData.java:192)
        at expo.modules.av.AVManager.lambda$loadForSound$1$expo-modules-av-AVManager(AVManager.java:427)
        at expo.modules.av.AVManager$$ExternalSyntheticLambda1.run(Unknown Source:8)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:27)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.exoplayer2.Player$EventListener" on path: DexPathList[[zip file "/data/app/~~C7lh4pNaUhs6vX4iUyfNdg==/com.example-t4y8AhcMP9xWIicEqkIjiw==/base.apk"],nativeLibraryDirectories=[/data/app/~~C7lh4pNaUhs6vX4iUyfNdg==/com.example-t4y8AhcMP9xWIicEqkIjiw==/lib/x86, /data/app/~~C7lh4pNaUhs6vX4iUyfNdg==/com.example-t4y8AhcMP9xWIicEqkIjiw==/base.apk!/lib/x86, /system/lib, /system_ext/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at expo.modules.av.player.PlayerData.createUnloadedPlayerData(PlayerData.java:192) 
        at expo.modules.av.AVManager.lambda$loadForSound$1$expo-modules-av-AVManager(AVManager.java:427) 
        at expo.modules.av.AVManager$$ExternalSyntheticLambda1.run(Unknown Source:8) 
        at android.os.Handler.handleCallback(Handler.java:938) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:27) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7656) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 

You just need to connect android studio to the emulator before clicking the "expo-av play" button. (it doesn't use the playAsync method, just the createAsync)

@stereodenis
Copy link

Still facing this issue after exiting app (with no player initialization).

@KrisLau
Copy link

KrisLau commented Sep 1, 2022

@jspizziri I just tested removing this package and just using expo-av works. The test for that is in the without-trackplayer branch of the same repo so I think it might have something to do with c292dd8 but I'm not sure exactly what.

From what I can remember using 2.1.4 worked fine with the workaround for the duplicate package names. I also tried adding the exoplayer dependency manually into my build.gradle but that didn't work either. I also noticed one thing but because I'm not 100% sure how it's supposed to work but it looks like exoplayer2 is still referenced in one of the files: https://github.com/doublesymmetry/react-native-track-player/blob/af5b1d252486c1c463c3a32945d54d03826fee4c/android/src/main/java/com/doublesymmetry/trackplayer/model/Track.kt (I was wrong about that hahaha)

I'll keep looking into it

(Also it looks like #1694 and #1639 (comment) are similar issue to this).

@jspizziri jspizziri reopened this Sep 1, 2022
@KrisLau
Copy link

KrisLau commented Sep 1, 2022

@jspizziri Sorry I've tried a bunch of things but i don't think I'm any closer to figuring out what is causing it. I'm just not very good
at this ahahaha and I'm not sure what else I should look into.

@rborn
Copy link

rborn commented Sep 2, 2022

I believe I found a fix, but my kotlin knowledge is -100 so maybe before making a PR someone could test? @KrisLau @jspizziri

I changed the lines

@MainThread
override fun onDestroy() {
super.onDestroy()
player.stop()
}

Where we need to check if plater actually is initialised being a lateInit variable to

    @MainThread
    override fun onDestroy() {
        super.onDestroy()
        
        if (this::player.isInitialized ) {
               player.stop()
        }
     
    }

and I suspect the onTaskRemoved (line 456) also needs this, I added it just in case.

No more crashes with this error for me, but please try and I'll make a PR if all goes well 🙏

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

@rbor Just tested it on my local machine and it doesn't seem to work for me. This is the repo I used to test the change: https://github.com/KrisLau/reproExoplayer

@rborn
Copy link

rborn commented Sep 2, 2022

@KrisLau I edited the file directly in my node_modules, cleaned and compiled again. For me the crash was showing on app hot reload reload.

@puckey
Copy link
Collaborator

puckey commented Sep 2, 2022

@rborn Don't trust any crashes that happen on hot reload to also happen in production. Best to test a fresh run instead.

@rborn
Copy link

rborn commented Sep 2, 2022

@puckey my crashlytics is full of them 😅

@s123121
Copy link

s123121 commented Sep 2, 2022

Just to chime in, from my test, this happened around 2 - 3 minutes when users put app in the background (I have another headless task running). Trackplayer has been setup but not use

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

#1678 suggests that it might be a version mismatch for exoplayer but I'm not sure ahhaha

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

Ok yeah it's definitely a exoplayer version mismatch: https://stackoverflow.com/questions/68496246/is-it-possible-to-have-two-different-versions-of-a-same-library-coexist. if there's any guidance on how to upgrade exoplayer please let me know

@rborn
Copy link

rborn commented Sep 2, 2022

@KrisLau But this is when you use another lib that has exoplayer, in my case I only have RNTP

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

@rborn For RNTP, i think someone else in the thread already mentioned that there are other solved issues for that

@rborn
Copy link

rborn commented Sep 2, 2022

@KrisLau do you have a link ? 🙏 ❤️

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

I have no clue which issue they were referring to but a quick search of RNTP pulls up this: #1679 which might be it

@KrisLau
Copy link

KrisLau commented Sep 2, 2022

If anyone who has any knowledge of using exoplayer, a pull request to expo-av would be greatly appreciated. I tried upgrading it myself but I have no clue what I'm doing and I'm causing more errors hahaha. My issue in expo-av: expo/expo#18937

@jspizziri
Copy link
Collaborator

@mpivchev do we need to wrap access of player with isInitialized checks as is indicated here?

#1633 (comment)

@jspizziri
Copy link
Collaborator

All, it looks like this was fixed via #1700. Please test via the nightly build, and let us know if the problem persists.

@KrisLau
Copy link

KrisLau commented Sep 14, 2022

For anyone interested, Expo maintainers are planning on upgrading the exoplayer version:

@yanhongchang-1105
Copy link

@jspizziri Working on that repro but I just realized I forgot to include this part in the previous comment:

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.exoplayer2.Player$EventListener" on path: DexPathList[[zip file "/data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.appname-WW3ZfkfrLQC1Yzh1sb60_A==/base.apk"],nativeLibraryDirectories=[/data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.epicsports.epicmobile-WW3ZfkfrLQC1Yzh1sb60_A==/lib/x86, /data/app/~~iW5DLLc0MbHqAWWG_Mjo7Q==/com.epicsports.epicmobile-WW3ZfkfrLQC1Yzh1sb60_A==/base.apk!/lib/x86, /system/lib, /system_ext/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at expo.modules.av.player.PlayerData.createUnloadedPlayerData(PlayerData.java:192) 
        at expo.modules.av.video.VideoView.setSource(VideoView.java:365) 
        at expo.modules.av.video.VideoView.setSource(VideoView.java:334) 
        at expo.modules.av.video.VideoViewManager.setSource(VideoViewManager.java:103) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at expo.modules.core.ViewManager.updateProp(ViewManager.java:90) 
        at expo.modules.adapters.react.views.ViewManagerAdapterUtils.setProxiedProperties(ViewManagerAdapterUtils.java:51) 
        at expo.modules.adapters.react.views.SimpleViewManagerAdapter.setProxiedProperties(SimpleViewManagerAdapter.java:49) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.facebook.react.uimanager.ViewManagersPropertyCache$PropSetter.updateViewProp(ViewManagersPropertyCache.java:93) 
        at com.facebook.react.uimanager.ViewManagerPropertyUpdater$FallbackViewManagerSetter.setProperty(ViewManagerPropertyUpdater.java:136) 
        at com.facebook.react.uimanager.ViewManagerPropertyUpdater.updateProps(ViewManagerPropertyUpdater.java:56) 
        at com.facebook.react.uimanager.ViewManager.updateProperties(ViewManager.java:48) 
        at com.facebook.react.uimanager.ViewManager.createViewInstance(ViewManager.java:144) 
        at com.facebook.react.uimanager.ViewManager.createView(ViewManager.java:77) 
        at com.facebook.react.uimanager.NativeViewHierarchyManager.createView(NativeViewHierarchyManager.java:281) 
        at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute(UIViewOperationQueue.java:194) 
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.dispatchPendingNonBatchedOperations(UIViewOperationQueue.java:1110) 
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:1081) 
        at com.facebook.react.uimanager.GuardedFrameCallback.doFrame(GuardedFrameCallback.java:29) 
        at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:175) 
        at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:85) 
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:970) 
        at android.view.Choreographer.doCallbacks(Choreographer.java:796) 
        at android.view.Choreographer.doFrame(Choreographer.java:727) 
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957) 
        at android.os.Handler.handleCallback(Handler.java:938) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7656) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 

Have you solved it now? Now I have met this problem and I am very anxious

@KrisLau
Copy link

KrisLau commented Jan 2, 2023

@yanhongchang-1105 Expo-AV has fixed this already on their end so if that's what's causing it for you upgrade your expo-av version. If it is something else you will have to check that library and open an issue there. React native track player cant do anything

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants