capacitor-plugin-playlist icon indicating copy to clipboard operation
capacitor-plugin-playlist copied to clipboard

App crashes when seeking (Android)

Open thoasty-dev opened this issue 3 years ago • 4 comments

I got the problem that on some tracks the app crashes or does not seek, when I seek late in the track.

03-23 09:00:16.354  5123  5213 E Capacitor: Serious error executing plugin
03-23 09:00:16.354  5123  5213 E Capacitor: java.lang.reflect.InvocationTargetException
03-23 09:00:16.354  5123  5213 E Capacitor: 	at java.lang.reflect.Method.invoke(Native Method)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:121)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.getcapacitor.Bridge.lambda$callPluginMethod$0$Bridge(Bridge.java:592)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.getcapacitor.-$$Lambda$Bridge$25SFHybyAQk7zS27hTVXh2p8tmw.run(Unknown Source:8)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.os.Handler.handleCallback(Handler.java:938)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.os.Looper.loop(Looper.java:236)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.os.HandlerThread.run(HandlerThread.java:67)
03-23 09:00:16.354  5123  5213 E Capacitor: Caused by: java.lang.IllegalArgumentException: Invalid notification (no valid small icon): Notification(channel=PlaylistCoreMediaNotificationChannel shortcut=null contentView=null vibrate=null sound=null defaults=0x0 flags=0x10 color=0x00000000 category=transport actions=3 vis=PUBLIC)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.app.NotificationManager.fixNotification(NotificationManager.java:606)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.app.NotificationManager.notifyAsUser(NotificationManager.java:585)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.app.NotificationManager.notify(NotificationManager.java:534)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at android.app.NotificationManager.notify(NotificationManager.java:510)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.updateMediaControls(DefaultPlaylistHandler.kt:313)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.setPlaybackState(DefaultPlaylistHandler.kt:522)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.performSeek(DefaultPlaylistHandler.kt:273)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.performSeek$default(DefaultPlaylistHandler.kt:268)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.seek(DefaultPlaylistHandler.kt:196)
03-23 09:00:16.354  5123  5213 E Capacitor: 	at org.dwbn.plugins.playlist.PlaylistPlugin.seekTo(PlaylistPlugin.kt:280)
03-23 09:00:16.354  5123  5213 E Capacitor: 	... 8 more
03-23 09:00:16.358  5123  5213 E AndroidRuntime: FATAL EXCEPTION: CapacitorPlugins
03-23 09:00:16.358  5123  5213 E AndroidRuntime: Process: **.**.**, PID: 5123
03-23 09:00:16.358  5123  5213 E AndroidRuntime: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.getcapacitor.Bridge.lambda$callPluginMethod$0$Bridge(Bridge.java:601)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.getcapacitor.-$$Lambda$Bridge$25SFHybyAQk7zS27hTVXh2p8tmw.run(Unknown Source:8)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.os.Handler.handleCallback(Handler.java:938)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:236)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.os.HandlerThread.run(HandlerThread.java:67)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: Caused by: java.lang.reflect.InvocationTargetException
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:121)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.getcapacitor.Bridge.lambda$callPluginMethod$0$Bridge(Bridge.java:592)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	... 5 more
03-23 09:00:16.358  5123  5213 E AndroidRuntime: Caused by: java.lang.IllegalArgumentException: Invalid notification (no valid small icon): Notification(channel=PlaylistCoreMediaNotificationChannel shortcut=null contentView=null vibrate=null sound=null defaults=0x0 flags=0x10 color=0x00000000 category=transport actions=3 vis=PUBLIC)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.app.NotificationManager.fixNotification(NotificationManager.java:606)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.app.NotificationManager.notifyAsUser(NotificationManager.java:585)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.app.NotificationManager.notify(NotificationManager.java:534)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at android.app.NotificationManager.notify(NotificationManager.java:510)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.updateMediaControls(DefaultPlaylistHandler.kt:313)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.setPlaybackState(DefaultPlaylistHandler.kt:522)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.performSeek(DefaultPlaylistHandler.kt:273)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.performSeek$default(DefaultPlaylistHandler.kt:268)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at com.devbrackets.android.playlistcore.components.playlisthandler.DefaultPlaylistHandler.seek(DefaultPlaylistHandler.kt:196)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	at org.dwbn.plugins.playlist.PlaylistPlugin.seekTo(PlaylistPlugin.kt:280)
03-23 09:00:16.358  5123  5213 E AndroidRuntime: 	... 8 more

thoasty-dev avatar Mar 23 '22 08:03 thoasty-dev

Hmm i cannot reproduce this, can you give an example please?

phiamo avatar Jul 05 '22 15:07 phiamo

@thoasty-dev ping

phiamo avatar Jul 28 '22 17:07 phiamo

IIRC it looks like the error I got when giving albumArt/icon that no longer returned a valid image.

emilsaj avatar Jul 28 '22 18:07 emilsaj

I think the problem was that I seeked out of bounds; later than the track was actually long

Which is an edge case, but probably should not result in the app crashing.

thoasty-dev avatar Aug 01 '22 12:08 thoasty-dev

we should handle thatmore graceful yes

phiamo avatar Jul 26 '24 21:07 phiamo