Especially if you’re new to the scene…
Integrations are great for many reasons but there are a few major drawbacks.
In our game Balloon Guru: Racer we use Facebook for signing in, Firebase for analytics and OneSignal for notifications. All of these depend on Android support library. This means that every time one of these needs updating for some reason we need to update all of them. When updating them their Android support library version needs to be synced since you can only ever reference one version of Android support library in an Android app.
In order to sync the version of the support library we go to the release notes of each of these dependencies and try to find the release with the most current common support library.
Sometimes Google requires you to have a certain api level that corresponds to a very recent Android support library. And if any of our third parties haven’t done their unity release for that version yet we cannot release.
All of this takes A LOT of time. It has in fact taken a significant amount of time in comparison to the entire development of our game. For this game we would actually have saved time building an identity system, a tracking system and maybe even the notifications ourselves.
Currently we have some issues with our game and wanted to try and upgrade to unity 2019. And what do you know.. now we need to update to the next major version of Firebase.
In all this time we spent on this we could have made new features and most of all we could have had so much more fun working on our game.