Google Play Игры достижение разблокирован всплывающее окно не отображается
Я открываю достижение, используя этот простой метод из документов разработчиков:
Games.Achievements.unlock(getApiClient(), "my_achievement_id");
достижение разблокируется, но всплывающее окно не появляется. Там также нет всплывающего окна при входе в Google Play Games-который подключен.
2 ответов
Я некоторое время боролся с этим, поэтому решил поделиться им на stackoverflow. Я описал простое решение этой проблемы на блог моего разработчика.
вот краткая версия:
просто добавьте представление к макетам, на которых вы хотите отображать достижения:
<FrameLayout
android:id="@+id/gps_popup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp" />
когда у вас есть макет готов вы neet, чтобы выполнить это внутри вашей деятельности или фрагмента:
Games.setViewForPopups(getApiClient(), findViewById(R.id.gps_popup));
вы должны быть уверены, что ваш GoogleApiClient подключен, хотя, в противном случае ваше приложение будет сбой.
<FrameLayout
android:id="@+id/gps_popup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp" />
это то же самое в Яцек Kwiecień ответ
GamesClient gamesClient = Games.getGamesClient(MainActivity.this, GoogleSignIn.getLastSignedInAccount(context));
gamesClient.setViewForPopups(findViewById(R.id.gps_popup));
это изменилось, потому что setViewForPopups с 2 параметрами устарел.