I'm developing a game using Unity3D (for Android and iOS). I would like to save all user's virtual goods, so they are available even if the user remove and reinstall the app, or even if the user install it on a new device.
AFAIK an approach would be to authenticate the user, and save all the data on my backend server. But, to not reinvent the wheel, can you share your approach? i.e.: how do you authenticate users? are you using your own server, or any BaaS?
EDIT: After reading your answers, I think the best approach is to use "Google Play Game Services Saved Games" on Android, using the official plugin for Unity3D. For iOS, there is a similar feature for GameCenter, but I can't find any official plugin for Unity3D. But this plugin may work: https://www.assetstore.unity3d.com/en/#!/content/11626
Soomla plugin can be useful: https://www.assetstore.unity3d.com/en/#!/content/6103
Also, this plugin can be useful too: https://www.assetstore.unity3d.com/en/#!/content/20152