Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Unity Google Play服务插件Social.localUser.Authenticate(…)应用程序崩溃_Android_Unity3d_Google Play Services_Google Play Games - Fatal编程技术网

Android Unity Google Play服务插件Social.localUser.Authenticate(…)应用程序崩溃

Android Unity Google Play服务插件Social.localUser.Authenticate(…)应用程序崩溃,android,unity3d,google-play-services,google-play-games,Android,Unity3d,Google Play Services,Google Play Games,谷歌Play服务的Unity3d代码。我使用的是谷歌PlayGamesPlugin-0.9.36和Unity5.4 using UnityEngine; using System.Collections; using UnityEngine.SocialPlatforms; using GooglePlayGames; public class MainGui : MonoBehaviour { private const float FontSizeMult

谷歌Play服务的Unity3d代码。我使用的是谷歌PlayGamesPlugin-0.9.36和Unity5.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();
        }
    }
    }
}
当我按下“验证”按钮时,应用程序崩溃。谷歌播放服务对话框没有出现。我已经构建了应用程序并在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)'

02-25 20:18:42.181:A/DEBUG(583):pid:23421,tid:23439,name:main>>>devnp.testing降级.aar文件修复问题

见:

旧文件:

以下是我如何解决这个问题的:

  • 转到资源>播放服务解析程序>Android解析程序>设置 取消勾选启用后台解析(这将在我们降级.aar文件后抑制更新通知)

  • 转到
    \extras\google\m2repository\com\google\android\gms
    。在每个文件夹中都有版本文件夹(如10.0.1、10.2.0)。里面是我们需要的.aar文件,或者从上面的谷歌硬盘链接下载 我们需要以下文件:

    • 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
    • 游戏-服务-地下室-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-near-10.0.1.aar
    • play-services-tasks-10.0.1.aar
  • \Assets\Plugins\Android
    下,删除上述.aar文件的10.2.0版本及其元文件

  • 将10.0.1版本复制到
  • 构建并运行您的项目

  • 您可能希望检查这一点,他们通过删除其生成设置中启用的动态批处理来解决问题。这就解释了这个异常是在您与远程进程交互时引起的,而远程进程以前已被终止。@Mr.Rebot应用程序在禁用动态批处理后仍会崩溃。我认为您已经解决了这个问题,感谢您分享解决方法