I found a bug in the reverse sync that probably exists from the original and does not depend on my coding.
It doesn't matter which comes first, for example, play a few songs in Poweramp and Sync in the app. The only item is Playcount, no problem.
Next, now play a few songs in GoneMAD and Sync in the app in the same way. The Playcount is also synced without any problem.
Play a few more songs in Poweramp and Sync again. Normally, the cache should be working, and only the playcount of this time should be reflected.
However, the Playcount for the first played is also reflected." Last Played" is not affected because there is no data.
Next, when I do the same thing with GoneMAD, the same phenomenon occurs.
I haven't followed the source yet, but when the latest playback history is retrieved, it is used for reverse sync,
and at the same time, it is kept as a cache for the next comparison, but something may be wrong with that.
For now, I will follow up the cache source for reverse sync while testing the normal usage of the system.