-
Notifications
You must be signed in to change notification settings - Fork 98
Should Resolve Most App Compliance Issues #478
Conversation
Service to listen to notifications and identify track information for Media Players initial commit.
Removed some older android version bugs.
Breaks old Broadcasts and substitutes modern Notification Ready for API 21+ Keeps old Broadcasts for API < 26
Cleanup and breaking Gingerbread support is official.
This should resolve approximately 90% of users issues. |
This is really going to add support for all these apps? That's amazing. I can't wait until the stable release is ready. |
I could do a release now, although I fear that the bugs will anger users if there are too many. |
Well, it's true some Music Apps might be too deprecated and not using the newest MediaSession tools. There will simply be a few apps I cannot get information from, so closing is ok for now. HERE is a signed APK #479 for testing and debugging. |
Pre-release seems to never actually send scrobbles. Now Playing is updated (and shows up on the sites). Songs get added to cache, but never show up on the various sites. I have last.fm, libre.fm, and ListenBrainz, and all are doing this. Within the app, all songs are listed in the cache, but clicking "Scrobble Now" does nothing. This seems to happen with all apps, even previously fully-supported apps. I checked with Pandora and Google Play Music (which has always worked fine). |
This is a new thing or it's been doing this before the new update? |
Could you please share the following: |
This is a new thing. On v1.5.7, scrobbling worked fine. Sometimes they would get stuck in the cache until I opened the app, but then they would immediately scrobble. Now, on v1.5.8-pre-v3, songs are put in the cache, and never actually scrobbled. Even when I click "Scrobble now", nothing happens. This is on a Samsung Galaxy S10E running Android 9. |
And glad to help testing the new version. I'm really excited for this update. It looks really promising once the kinks are ironed out. |
All three services are stuck in the cache? last, libre & listen? |
I can't seem to recreate your database problem ... |
Was your install an upgrade as opposed to fresh install? |
Yeah, all three services. Yes, it was an upgrade. When I upgraded, though, all my data was lost, and I had to re-add my accounts. |
So the app might have left the remaining songs in the cache from before and it could have caused issues. |
@a93h When I upgraded, there weren't any songs in the queue. I opened the app before I upgraded, and checked. The queue was empty. The songs currently stuck in the queue were new since upgrading. |
I'll try wiping data, and uninstalling and reinstalling shortly and let you know if that fixes the scrobbling problem. |
Since clearing data, and then un- and re-installing, I've now got an odder issue. When I started the app, there was already one scrobble in my cache. It was from a few days ago, although that was previously scrobbled. When I click "Scrobble Now", the app crashes. |
This is great information, you don't by chance have adb handy? |
I've got |
Well if you know how to recreate those bugs and send me whatever comes out of adb while the app crashes I can patch the bug or restructure. |
@goodevilgenius I am having a hard time recreating the app upgrade bug, |
Good News! I resolved the upgrade issues. I managed to get the same problems you had and found out it was an issue with the upgrade code. Bad News! I kind of expected something gnarly would happen like this if I did not read the code fully before implementing custom database methods. |
What exactly do I need to do with I've never actually done any Android development. I just use I tried installing v1.5.8-pre-v5 and definitely saw some odd behavior. It didn't fix the scrobbling bug. Additionally, I tried clearing app data, uninstalling and reinstalling (instead of upgrading), and when I started the app again, my account logins were already there, and there were a few tracks in the queue, although not all of them that were there from before the upgrade. And attempting to "Scrobble Now" still crashes the app. |
Ok, I thought it was for sure the problem. |
I built a wiki page for this. https://github.com/simple-last-fm-scrobbler/sls/wiki/Debugging-Crashes |
I think I found it... 2019-08-28 15:11:26.534 1932-1999/com.adam.aslfms E/SQLiteLog: (1) foreign key mismatch - "scrobbles_netapp" referencing "scrobbles_netapp"
2019-08-28 15:11:26.537 1932-1999/com.adam.aslfms E/AndroidRuntime: FATAL EXCEPTION: pool-6-thread-1
Process: com.adam.aslfms, PID: 1932
android.database.sqlite.SQLiteException: foreign key mismatch - "scrobbles_netapp" referencing "scrobbles_netapp" (code 1 SQLITE_ERROR[1]): , while compiling: DELETE FROM scrobbles_netapp WHERE netappid = ? and trackid = ?
at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1229)
at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:703)
at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:59)
at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
at android.database.sqlite.SQLiteDatabase.delete(SQLiteDatabase.java:2047)
at com.adam.aslfms.util.ScrobblesDatabase.deleteScrobble(ScrobblesDatabase.java:257)
at com.adam.aslfms.service.Scrobbler.doRun(Scrobbler.java:111)
at com.adam.aslfms.service.AbstractSubmitter.run(AbstractSubmitter.java:67)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764) |
The newest libraries have been included.