First of all, I had huge issues doing a build, this is what I went through.
1 - Missing code files - Build issues - so I researched and noticed my GoogleAds and GooglePlayService frameworks were out dated.
2 - Missing code files - More Build issues - then I read that I should use the new GPGS C++ framework instead of the older Google Play Services SDK.
3 - Macho-linker bugs - More Build issues - then I read then xCode requires to have Enable Modules set to YES in Build Settings.
4 - More Build Issues - then I got the info of all the Frameworks and Bundles I have to include via xCode. (had a few missing).
5 - Post Build issues - GPGS was missing (over 200 Macho-linker errors)
6 - I added “NO_GPGS” to Unity’s build settings under “Scripting Defined Symbol”… and I FINALLY got a build successful! but I have no Google Play login screen, and or features.
QUESTION: is “NO_GPGS” only for testing purposes? Should I remove the NO_GPGS and try getting a build working? Did anyone get this working without any issues?
NO_GPGS Information
This plugin can be disabled for building on iOS. What this means is that the libraries and references originating in the GooglePlayGames namespace are excluded from the build. It does not affect code that has been written by you, such as calls to the GPGS API.
To disable the Google Play Game Services in the iOS build, open the iOS player settings. Then in the “Other Settings” panel, find the entry named “Scripting Define Symbol” and add a symbol named: NO_GPGS (case sensitive).