我刚刚完成了我的小游戏,其中包含可供用户使用的排行榜功能。 我使用的是迄今为止最新的GooglePlayServices和来自此来源https://github.com/playgameservices/android-basic-samples/tree/master/BasicSamples/libraries/BaseGameUtils的BaseGameUtils。
它在Android 4.0上工作正常。+,但我在旧的Android手机上测试它。 2.2.1它会抛出异常java.lang.NoSuchMethodError
,如下所示。
这是我的MainActivity
,而且这个例外是gameHelper.setup(this)
:
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
initialize(new MyGame(this), config);
try {
if (gameHelper == null) {
gameHelper = new GameHelper(this, GameHelper.CLIENT_GAMES);
gameHelper.enableDebugLog(true);
}
gameHelper.setup(this);
} catch (Exception e) {
e.printStackTrace();
}
}
以下是 logcat :
07-27 17:18:02.111: E/AndroidRuntime(1505): FATAL EXCEPTION: main
07-27 17:18:02.111: E/AndroidRuntime(1505): java.lang.NoSuchMethodError: java.util.Collections.newSetFromMap
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.google.android.gms.common.api.c.<init>(Unknown Source)
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.google.android.gms.common.api.GoogleApiClient$Builder.build(Unknown Source)
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.google.example.games.basegameutils.GameHelper.setup(GameHelper.java:330)
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.test.testgame.android.AndroidLauncher.onCreate(AndroidLauncher.java:30)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2633)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2685)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.ActivityThread.access$2300(ActivityThread.java:126)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.os.Handler.dispatchMessage(Handler.java:99)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.os.Looper.loop(Looper.java:123)
07-27 17:18:02.111: E/AndroidRuntime(1505): at android.app.ActivityThread.main(ActivityThread.java:4633)
07-27 17:18:02.111: E/AndroidRuntime(1505): at java.lang.reflect.Method.invokeNative(Native Method)
07-27 17:18:02.111: E/AndroidRuntime(1505): at java.lang.reflect.Method.invoke(Method.java:521)
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
07-27 17:18:02.111: E/AndroidRuntime(1505): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
07-27 17:18:02.111: E/AndroidRuntime(1505): at dalvik.system.NativeStart.main(Native Method)
有什么工作吗?