初始化游戏客户端在Android中(Initializing Games Client in And

2019-09-03 19:38发布

我想新的谷歌Play游戏服务。

起初,我跟着这个HOWTO https://developers.google.com/games/services/android/quickstart然后完成这个https://developers.google.com/games/services/android/init

我最终是这样的:

05-16 20:01:39.034: E/AndroidRuntime(18257): FATAL EXCEPTION: main
05-16 20:01:39.034: E/AndroidRuntime(18257): java.lang.IllegalStateException: A fatal developer error has occurred. Check the logs for further information.
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.google.android.gms.internal.p$f.a(Unknown Source)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.google.android.gms.internal.p$f.a(Unknown Source)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.google.android.gms.internal.p$b.p(Unknown Source)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.google.android.gms.internal.p$a.handleMessage(Unknown Source)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at android.os.Looper.loop(Looper.java:137)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at android.app.ActivityThread.main(ActivityThread.java:5041)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at java.lang.reflect.Method.invokeNative(Native Method)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at java.lang.reflect.Method.invoke(Method.java:511)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
05-16 20:01:39.034: E/AndroidRuntime(18257):    at dalvik.system.NativeStart.main(Native Method)

我试图按照一步教程一步。 我不明白什么错误。

ava.lang.IllegalStateException:发生致命错误开发商。 检查的详细信息的日志。

我认为logcat的=日志,并没有什么更多。 所以,我在哪里可以找到这些“记录”?

我只执行一两件事是不同的。 我有延伸BaseGameActivity然后ClassB的延伸ClassA和实现View.OnClickListener所以我必须从所有方法ClassA的https://developers.google.com/games/services/android/init类ClassB的

谢谢你的帮助

Answer 1:

我开始有同样的问题。 我所要做的就是看全,未经过滤的logcat日志。 在那里,我看到的消息:

GamesIntentService(17929):使用谷歌Play游戏服务需要在您的清单中的应用标签名为“com.google.android.gms.games.APP_ID”元数据标签

所以,假设你创建你的项目strings.xml称为app_id ,尝试添加以下到您AndroidManifest.xml<application>标签:

<meta-data android:name="com.google.android.gms.games.APP_ID"
        android:value="@string/app_id" />

您可以在游戏服务标签您的APP_ID



Answer 2:

补充Hetabiquo响应,如果你还在你的游戏中使用云端储存服务,您也必须通过添加里面的下列元数据标签来更新您的应用程序的AndroidManifest.xml <application>标记范围

<meta-data android:name="com.google.android.gms.appstate.APP_ID" android:value="@string/app_id" />


Answer 3:

刚刚有同样的问题,但有元标记正确 - 我没有抬头的未经过滤的logcat和发现,它正在寻找一个不同的元标记。

元标记的名称由排序客户编号的你在GameHelper构造提交不同(如果您使用它)。

new GameHelper(this, GameHelper.CLIENT_GAMES);

对我来说,我不期而遇使用CLIENT_ALL这导致了元标记名称的错误预期。 我把它改成CLIENT_GAMES和一切工作顺利。



Answer 4:

除了Hetabiquo,您可以鳍运动会服务选项卡您的APP_ID:



Answer 5:

我从这个错误遭受了相当长的一段时间。 我决定要经过basegameutils包扫描每个文件一次一个。 在gameHelperUtils类我发现这个方法,getAppIdFromResource()。 它里面也要求应用程序ID从资源。 我记得我曾在清单文件中的硬编码的应用程序ID。 然后,我在字符串文件添加APP_ID的字符串资源。 令我吃惊的是,该错误走了,排行榜的出现了!



文章来源: Initializing Games Client in Android