Ответ 1
Я только что закончил создание лидеров, и это было больно, но я сделал это, и он работает. Вот длинный список предложений, которые могут прямо или косвенно помочь вам. Я использую Eclipse.
-
Для API Google Play минимальный SDK равен 9, поэтому поставьте это в своем манифесте на его собственную строку:
< использует-SDK Android: minSdkVersion = "9" андроид: targetSdkVersion = "19" /" > // любой желаемый объект
-
Импортируйте проект BaseGameUtils в рабочее пространство. Вам не нужно изменять какой-либо из этих кодов.
-
Импортировать google-play-services_lib. Это находится в папке sdk. Моя папка sdk находится рядом с моей папкой eclipse. В любом случае это происходит в: sdk/extras/google/google_play_services/libproject/google-play-services_lib. Вам не нужно изменять какой-либо из этих кодов.
-
Щелкните правой кнопкой мыши на свой проект на вкладке проводника пакета (обычно на левой стороне затмения со всеми папками проекта). Затем нажмите "Свойства" (Alt + Enter). Затем нажмите на Android. В нижней части страницы Android должна быть "Библиотека". Нажмите кнопку добавления и добавьте BaseGameUtils и google-play-services_lib. Не нажимайте "Библиотека".
-
Убедитесь, что все файлы android-support-v4.jar во всех соответствующих проектах используют ту же самую последнюю версию. Вы можете обновить свой файл поддержки, щелкнув правой кнопкой мыши на своем проекте на вкладке "explorer" и перейдите в → Инструменты Android → Добавить библиотеку поддержки. Затем вы принимаете и обновляете. Вы можете дополнительно проверить, есть ли у всех перечисленных проектов этот обновленный фляга, щелкнув правой кнопкой мыши ваш проект и перейдя к свойствам. Затем нажмите "Путь сборки Java", а затем перейдите на вкладку "Библиотеки". Вы должны увидеть указанную банку поддержки. Если нет, вы можете добавить банку, где бы она ни находилась в проекте. Если вы этого не сделаете, у вас может быть что-то вроде JAR MIXMATCH. Конечно, вы увидите точную проблему на своей консоли, поэтому ее легко исправить и диагностировать.
-
Ваш манифест должен быть: < мета-данные Android: name= "com.google.android.gms.games.APP_ID" android: value = "@string/app_id" / " > < мета-данные Android: name=" com.google.android.gms.version " android: value =" @integer/google_play_services_version "/" >
Последняя строка с @integer просматривает google_play_services_version, поэтому вам не нужно ничего делать в будущем при изменении версии игры Google. Не производите жесткое кодирование номера версии или вам придется вручную обновлять его часто.
-
MyProject расширяет BaseGameActivity.
-
Затем, чтобы вызвать таблицу лидеров и обновить ее, их пример кода из 2 строк кода отлично работает. Смотри ниже. https://developers.google.com/games/services/android/leaderboards Вы должны передать идентификатор своего лидера, указанный вам, когда вы связываете свое приложение с консолью разработчика Google Play. Это строка, которая выглядит примерно так: "DkbGvageyBASEWEFCx". Обновление и получение таблицы лидеров приведет к сбою, если вы не подключены. Ознакомьтесь с полным кодом примера ниже.
//обновить if (getApiClient(). isConnected())//getAPIClient является частью BaseGameUtils Games.Leaderboards.submitScore(getApiClient(), leaderboardID, оценка);
//показать if (getApiClient(). isConnected()) startActivityForResult (Games.Leaderboards.getLeaderboardIntent(getApiClient(), leaderboardID), 1337);
-
Наконец, если вы используете приложение с другим хранилищем ключей, которое имеет другой SHA1 (Secure Hash Algorithm), чем тот, который у вас есть в магазине воспроизведения Google, тогда будет ошибка, и вы не будете быть в состоянии подключиться. Поэтому, если вы загрузили приложение с хранилищем ключей с помощью SHA1, например ab: cd: de... и вы отлаживаете свое приложение, вы можете увидеть проблемы, так как Eclipse будет использовать хранилище отладки по умолчанию для Android, у которого есть другой SHA1. Вы не сможете подключиться, и, следовательно, вы не сможете использовать какие-либо сервисы Google Play.
-
Я рекомендую вам посмотреть пример кода под названием "Trivial Quest". https://github.com/playgameservices/android-samples Это под eclipse_compat. В этом примере кода показано, как войти и разблокировать достижение. Если вы можете войти в систему, вы можете сделать достижения и таблицы лидеров очень легко.
-
Там много чего, но вы дали нам лишь небольшую часть головоломки. Если у вас возникли проблемы, сообщите нам об этом.