- Home /
Unity Google Play Service Plugin Social.localUser.Authenticate(…) App Crash
Unity3d Code for Google Play Service.I am using GooglePlayGamesPlugin-0.9.36 and Unity 5.4
using UnityEngine;
using System.Collections;
using UnityEngine.SocialPlatforms;
using GooglePlayGames;
public class MainGui : MonoBehaviour
{
private const float FontSizeMult = 0.05f;
private bool mWaitingForAuth = false;
private string mStatusText = "Ready.";
private bool dumpedToken = false;
void Start()
{
// Select the Google Play Games platform as our social platform implementation
PlayGamesPlatform.Activate();
}
void OnGUI()
{
GUI.skin.button.fontSize = (int)(FontSizeMult * Screen.height);
GUI.skin.label.fontSize = (int)(FontSizeMult * Screen.height);
GUI.Label(new Rect(20, 20, Screen.width, Screen.height * 0.25f),
mStatusText);
Rect buttonRect = new Rect(0.25f * Screen.width, 0.10f * Screen.height,
0.5f * Screen.width, 0.25f * Screen.height);
Rect imageRect = new Rect(buttonRect.x + buttonRect.width / 4f,
buttonRect.y + buttonRect.height * 1.1f,
buttonRect.width / 2f, buttonRect.width / 2f);
if (mWaitingForAuth)
{
return;
}
string buttonLabel;
if (Social.localUser.authenticated)
{
buttonLabel = "Sign Out";
if (Social.localUser.image != null)
{
GUI.DrawTexture(imageRect, Social.localUser.image,
ScaleMode.ScaleToFit);
}
else {
GUI.Label(imageRect, "No image available");
}
mStatusText = "Ready";
if (!dumpedToken)
{
string token = GooglePlayGames.PlayGamesPlatform.Instance.GetToken();
Debug.Log("AccessToken = " + token);
dumpedToken = token != null && token.Length > 0;
}
}
else {
buttonLabel = "Authenticate";
}
if (GUI.Button(buttonRect, buttonLabel))
{
if (!Social.localUser.authenticated)
{
// Authenticate
mWaitingForAuth = true;
mStatusText = "Authenticating...";
Social.localUser.Authenticate((bool success) =>
{
mWaitingForAuth = false;
if (success)
{
mStatusText = "Welcome " + Social.localUser.userName;
}
else {
mStatusText = "Authentication failed.";
}
});
}
else {
// Sign out!
mStatusText = "Signing out.";
((GooglePlayGames.PlayGamesPlatform)Social.Active).SignOut();
}
}
}
}
App crash when I Press Authenticate Button.And Google Play Service Dialog does not appear.I have build the app and run it in Android Mobile.
02-25 20:18:42.181: A/DEBUG(583): pid: 23421, tid: 23439, name: main >>> devnp.testing <<<
02-25 20:18:42.197: W/debuggerd(583): type=1400 audit(0.0:35378): avc: denied { search } for name="devnp.testing" dev="dm-1" ino=141182 scontext=u:r:debuggerd:s0 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
02-25 20:18:42.260: A/DEBUG(583): #11 pc 0009221b /data/app/devnp.testing-1/lib/arm/libgpg.so
02-25 20:18:42.260: A/DEBUG(583): #12 pc 00092e37 /data/app/devnp.testing-1/lib/arm/libgpg.so
02-25 20:18:42.261: A/DEBUG(583): #13 pc 000933dd /data/app/devnp.testing-1/lib/arm/libgpg.so
02-25 20:18:42.261: A/DEBUG(583): #14 pc 0008dc69 /data/app/devnp.testing-1/lib/arm/libgpg.so (_ZNK3gpg28AndroidPlatformConfiguration5ValidEv+76)
02-25 20:18:42.261: A/DEBUG(583): #15 pc 00053441 /data/app/devnp.testing-1/lib/arm/libgpg.so (_ZN3gpg12GameServices7Builder6CreateERKNS_28AndroidPlatformConfigurationE+40)
02-25 20:18:42.261: A/DEBUG(583): #16 pc 000c73dd /data/app/devnp.testing-1/lib/arm/libgpg.so (GameServices_Builder_Create+16)
02-25 20:18:43.054: W/ActivityManager(1439): Force finishing activity devnp.testing/com.unity3d.player.UnityPlayerActivity
02-25 20:18:43.233: I/ActivityManager(1439): Process devnp.testing (pid 23421) has died
02-25 20:18:43.234: W/InputDispatcher(1439): channel 'd1b52d4 devnp.testing/com.unity3d.player.UnityPlayerActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9
02-25 20:18:43.234: E/InputDispatcher(1439): channel 'd1b52d4 devnp.testing/com.unity3d.player.UnityPlayerActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
02-25 20:18:43.237: I/WindowState(1439): WIN DEATH: Window{d1b52d4 u0 devnp.testing/com.unity3d.player.UnityPlayerActivity}
02-25 20:18:43.237: W/InputDispatcher(1439): Attempted to unregister already unregistered input channel 'd1b52d4 devnp.testing/com.unity3d.player.UnityPlayerActivity (server)'
After trying for two days i posted the same question in stackoverflow and here.I found the solution.
Answer by MukeshM · Feb 28, 2017 at 07:47 AM
Downgrading the .aar file fix the problem
See: https://github.com/playgameservices/play-games-plugin-for-unity/issues/1604
Older Files: https://drive.google.com/drive/u/0/folders/0B-w9u2zDKrHGUmtjMmk2VDhhSjA
Here is how I worked around this issue:
Go to Assets > Play Services Resolver > Android Resolver > Settings Un-tick Enable Background resolution (This will suppress the update notifications once we downgrade the .aar files)
Go to \extras\google\m2repository\com\google\android\gms .Inside each of the folders there are version folders (such as 10.0.1, 10.2.0). And inside those are the .aar files we need or download from above google drive link We will need the following files:
play-services-ads-10.0.1.aar
play-services-ads-lite-10.0.1.aar
play-services-auth-10.0.1.aar
play-services-auth-base-10.0.1.aar
play-services-base-10.0.1.aar
play-services-basement-10.0.1.aar
play-services-clearcut-10.0.1.aar
play-services-drive-10.0.1.aar
play-services-games-10.0.1.aar
play-services-gass-10.0.1.aar
play-services-nearby-10.0.1.aar
play-services-tasks-10.0.1.aar
Under \Assets\Plugins\Android delete the 10.2.0 versions of the .aar files above, with their META files.
Copy the 10.0.1 versions over
Build and run your project.
I don't have any AAR files here but it doesn't crash nor it doesn't authenticate.
Your answer
Follow this Question
Related Questions
Problem with Google Play Game Services: Invalid Classname 1 Answer
Android - Error building Player: CommandInvokationFailure: Failed to re-package resources 0 Answers
Google Play Services error 0 Answers
Apk Build size increase after upgrade to unity 5 1 Answer
using GooglePlayGames; not working? 0 Answers