Google Play Game Service: показать разблокированное достижение

Возможно, это глупый вопрос, но я не нашел на него ответа в Google, так что решать вам :)

Я использую сервис Google Play для предоставления достижений и списков лидеров в своем приложении для Android. я использую

unlockAchievement(getResources().getString(R.string.achievement_id));

Хотя достижение разблокировано корректно и отображается в списке достижений, оно НЕ отображается пользователю сразу после его разблокировки, т.е. "достижение разблокировано", как на скриншоте ниже, не отображается:

введите здесь описание изображения

Любые идеи, почему это не всплывает?

Заранее спасибо!


person Richard R    schedule 22.12.2013    source источник
comment
(1) Достижение уже разблокировано? Пользовательский интерфейс сработает только в первый раз, когда достижение действительно разблокируется из заблокированного состояния, а не при последующих запросах. (2) Вы уверены, что верный id_achievement_id?   -  person addaon    schedule 22.12.2013
comment
Привет аддон. (1) Я проверил это и создал новое достижение только для тестирования. При разблокировке вновь созданное достижение не отображается, а разблокируется и отображается как разблокированное в списке достижений в Google Play, когда я его отображаю. Итак (2) да, идентификатор правильно отправлен в Google Play. Возможно ли, что всплывающее окно не отображается при тестировании? Я тестирую на реальном устройстве с реальной учетной записью Google Plus.   -  person Richard R    schedule 23.12.2013
comment
Вы устанавливаете представление для всплывающих окон не по умолчанию?   -  person Bruno Oliveira    schedule 08.01.2014


Ответы (1)


Я понял. Раньше я создавал экземпляр GameClient в своем основном действии и ссылался на него в игровом действии. Таким образом, всплывающее окно разблокировки было привязано к основному, а не к игровому действию. Так что я изменил

MainActivity.gamesClient.unlockAchievement(...);

to

getGamesClient().unlockAchievement(...);.

И это все!

person Richard R    schedule 09.01.2014