We recently updated our Unity to Unity 5.5.0f3. With this we had to update our Google Play Games library to get it working with the Unity version. We are using the official Google Play Games plugin from here: https://github.com/playgameservices/play-games-plugin-for-unity
With this change, we have seen the Push notification fail on a few occasions with Google Play Games plugin. We are using the Playfab's Push notification from here: https://github.com/PlayFab/UnitySDK/tree/master/Packages/PushNotification_Unity5_0
The following fail cases are with the latest Google Play Games plugin installed.
The PlayFab push notification plugin comes with a few conflicting libraries initially against the Google Play Games plugin. The supportv4 and annotations are higher in version but the googleplayservices base and basement are lower versions.
If we overwrite all of the Google Play Plugin versions w/ the PlayFab plugin we get the following when we build -
stderr[ Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/auth/api/signin/internal/zze; Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/auth/api/signin/internal/zzk; Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzamk; Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzaml;
and then if we do the importing of the PlayFab plugin again but this time we only accept the higher versions of all plugins (keeping the supportv4 and annotations that PlayFab provides but discard the base and basement plugins), it builds fine but when we initiate the push call from here: https://api.playfab.com/docs/push-for-android we get a crash in the game with a trace of the following:
Caused by: java.lang.NoSuchMethodError: No static method getNoBackupFilesDir(Landroid/content/Context;)Ljava/io/File; in class Lcom/google/android/gms/common/util/zzx; or its super classes (declaration of 'com.google.android.gms.common.util.zzx'
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.google.android.gms.iid.zzd.zzkf(Unknown Source)
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.google.android.gms.iid.zzd.<init>(Unknown Source)
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.google.android.gms.iid.zzd.<init>(Unknown Source)
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.google.android.gms.iid.InstanceID.zza(Unknown Source)
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.google.android.gms.iid.InstanceID.getInstance(Unknown Source)
01-25 23:07:53.795 1213 1848 E AndroidRuntime: at com.playfab.unityplugin.GCM.PlayFabRegistrationIntentService.onHandleIntent(PlayFabRegistrationIntentService.java:39)
Has PlayFab's Push notification plugin been tested w/ 5.5 or with Google's latest version of the Google Play Games plugin?
Thanks,
Kevin