I don't have a reputation high enough to comment on Thunks answer, but I can submit my own, so that’s how I get this information there. Most of the problem is that there are no examples of how to use this code, but no documentation. Thus, a code that does not work is not proof that the code is broken, we just don’t know how to use it.
But based on the statements that Thunk makes, I was able to get a player: didModifySavedGame and player: hasConflictingSavedGames, who, he said, had never seen their fire.
These are the GKSavedGameListener insanity methods. The problem that I encountered with this protocol is that it does not have a delegate for its appointment, so I can select any class in my program and bring it into line with this protocol, and then expect the methods to be launched, which seemed unlikely. So I need some kind of delegate to say which class matches.
I found that by setting localPlayer.registerListener (self), where self is the appropriate class, I force them to fire.
So, double check any methods that don't fire with this kit, and let us know if it works better.
source share