As far as I can tell, amarok _never_ scrobbles what's being played to last.fm except when the program is first started. I think that it catches everything that was played the last time the program was running when it does that, but if you have the player going for long periods of time, no scrobbling takes place, and it's trivial to have amarok then try and update last.fm with the list of songs played after other devices have been playing songs, since it would be quite common to shut down amarok and then use another device (like your phone) to play songs while you're away from your computer, and then start up amarok again when you get back (at which point, it finally scrobbles).
And of course, if you care about last.fm listing what you're currently playing, then amarok fails at that completely at this point.
Steps to Reproduce:
1. Have last.fm plugin configured and enabled
2. Play songs. Nothing gets scrobbled.
3. Close amarok. Nothing gets scrobbled.
4. Start amarok. Finally, the songs that were played the last time that amarok was running get scrobbled.
No scrobbling takes place except when amarok is first started.
Amarok scrobbles when each song is played (or worst case, soon thereafter).
For workaround see bug 320219.
*** This bug has been marked as a duplicate of bug 320219 ***