At the start of the internship when I analyzed available solutions I could use for CP Social, I first started of a free and open source plugin from Google that enabled developers to add Google Play services to their Unity project.
Play Games For Unity
The play-games-for-unity plugin developed by Google itself was used in the first iterations of the Android Services for CP Social. This plugin worked flawlessly, up until the point I started working with Cloud Saves.
Cloud save blunder
When trying to get cloud saves working on an android device when using the play-games-for-unity plugin I got all kinds of errors about it not being able to find save games or not being able to find a valid save game.
After a lot of trial and error I sort of gave up on this problem and started working on the iOS service, to try and get my mind straight again.
When I started working with iOS I found out that creating a plugin for iOS would be far out of the scope of this internship so I started looking for a solution that would help implementing the native functionalities need for CP Social on iOS. Then id found Stan’s Assets – Ultimate mobile pro which includes iOS and Android supported for the needed CP Social services and a whole lot more.
So what did I do wrong
Well… After switching the entire Android service to the new plugin, I found out that the names of save games can’t include any of the RFC 3986 reserved characters…
Stan’s Assets – Ultimate mobile pro
Ultimate Mobile pro is unity plugin create by the Stan’s Assets, that included implementations for all of the native functionalities on Android and iOS.
Using this new plugin and the knowledge on how to implement the Cloud saves, the implementing the android features went very smoothly.
Implementation
Below are a couple of screen recordings I made everytime a new feature was implemented to share it to the rest of my colleagues, and let them know of my progress.
In these example you can also the see the test project‘s functionalities in action.