gpt4 book ai didi

android-ndk - Google Play 游戏服务集成失败, "Play Games callback indicates connection failure."

转载 作者:行者123 更新时间:2023-12-05 00:24:03 26 4
gpt4 key购买 nike

我使用极简代码示例将 Google 游戏服务与我的 NDK 游戏集成。

启动应用程序时,身份验证失败并在日志中显示:

V/GamesNativeSDK( 7212): Play Games callback indicates connection failure.
I/GamesNativeSDK( 7212): UI interaction required to connect to Google Play.
I/TeapotNativeActivity( 7212): Sign in finished with a result of -3
I/biplane ( 7212): OnAuthActionFinished
I/biplane ( 7212): You are not logged in!
I/TeapotNativeActivity( 7212): Fetching all blocking
I/TeapotNativeActivity( 7212): --------------------------------------------------------------
I/TeapotNativeActivity( 7212): Fetching all nonblocking
I/TeapotNativeActivity( 7212): --------------------------------------------------------------
I/TeapotNativeActivity( 7212): Achievement response status: -3

我已经执行了在线文档中列出的所有步骤,包括:
  • 在 Google Play Developer Console 中创建了一个游戏服务并链接了两个应用程序。
  • 带有调试 key 的链接应用程序
  • 带有释放键的链接器应用程序
  • 从链接的应用程序中获取应用程序 ID(两个链接的应用程序的 ID 相同)并将其放入 res/values/ids.xml
  • 创建排行榜,并将其 ID 放在 res/values/game-ids.xml
  • 使用 name="com.google.android.gms.games.APP_ID"和 value="@string/app_id"在我的 AndroidManifest.xml 中添加标签
  • 下载了游戏服务应用程序的最新更新。
  • 将自己列为测试用户。

  • 我不确定哪个消息是原始错误,哪个是症状。
    “连接失败”或“需要 UI 交互”。

    请注意,在开发者控制台中,两个链接的应用程序被列为“准备发布”。

    我使用的源代码是来自 c++ 代码示例的 StateManager.cpp 的逐字副本,在我的 android_main 中,我也复制了示例代码片段:
    // gpg-cpp:  Here we create the callback on auth operations
    auto callback = [&](gpg::AuthOperation op, gpg::AuthStatus status) {
    LOGI("OnAuthActionFinished");
    if (IsSuccess(status)) {
    LOGI("You are logged in!");
    } else {
    LOGI("You are not logged in!");
    }
    //engine.animating = 1;
    };

    if (state->savedState != NULL)
    {
    // We are starting with a previous saved state; restore from it.
    engine.state = *(struct saved_state*)state->savedState;
    LOGI("Restored state");
    }
    else
    {
    LOGI( "No saved state to restore." );
    gpg::AndroidPlatformConfiguration platform_configuration;
    platform_configuration.SetActivity(state->activity->clazz);
    // Now, create the game service (see StateManager.cpp) and pass in callback
    StateManager::InitServices(platform_configuration, NULL, callback);
    }

    最佳答案

    所以,事实证明这种行为是为了:
    如果您以前从未登录过,自动登录(在服务启动时)应该会失败。

    您需要先进行用户发起的登录,使用:

    game_services_->StartAuthorizationUI();

    ...在随后的自动登录成功之前。

    另请注意,控制台上有很多错误,它们似乎不会干扰 google play 游戏服务的正常运行。
    E/GamesNativeSDK(12369): Exception in dalvik/system/DexClassLoader.loadClass: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.games.NativeSdkEntryPoints" on path: DexPathList[[zip file "/data/data/com.steenriver.Biplane/app_.gpg.classloader/4da25210572e7e07ea67142ded62c42e.jar"],nativeLibraryDirectories=[/vendor/lib, /system/lib]].
    W/dalvikvm(12369): Unable to resolve superclass of Lcom/google/android/gms/common/api/d; (148)
    W/dalvikvm(12369): Link of class 'Lcom/google/android/gms/common/api/d;' failed
    I/dalvikvm(12369): Could not find method com.google.android.gms.common.api.d.a, referenced from method com.google.android.gms.common.api.GoogleApiClient$Builder.gl
    W/dalvikvm(12369): VFY: unable to resolve static method 3084: Lcom/google/android/gms/common/api/d;.a (Landroid/support/v4/app/FragmentActivity;)Lcom/google/android/gms/common/api/d;
    D/dalvikvm(12369): VFY: replacing opcode 0x71 at 0x0002
    W/dalvikvm(12369): VFY: unable to find class referenced in signature (Landroid/support/v4/app/FragmentActivity;)
    E/dalvikvm(12369): Could not find class 'android.support.v4.app.FragmentActivity', referenced from method com.google.android.gms.common.api.GoogleApiClient$Builder.enableAutoManage
    W/dalvikvm(12369): VFY: unable to resolve check-cast 149 (Landroid/support/v4/app/FragmentActivity;) in Lcom/google/android/gms/common/api/GoogleApiClient$Builder;
    D/dalvikvm(12369): VFY: replacing opcode 0x1f at 0x0010

    最后一个注意事项:奇怪的是,当我尝试在没有网络连接的情况下登录时,我还看到了“需要用户交互”错误。

    关于android-ndk - Google Play 游戏服务集成失败, "Play Games callback indicates connection failure.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27238208/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com