No se muestra Pop Up cuando se llama a Games.Achievements.unlock

Mi juego actual de Android emplea BaseGameActivity.

Mi juego emplea logros, que se están desbloqueando cuando se requiere.

Sin embargo, no siempre veo los PopUps relacionados con el evento de desbloqueo.

Sé que el emergente sólo aparece cuando primero desbloqueas el logro.

Algunos pop-ups aparecen bien, otros (de diferentes pantallas dentro de mi juego) nunca aparecen.

¿Qué debo hacer para garantizar que aparezcan las ventanas emergentes?

Tengo una sensación su relacionada con esto ADVERTENCIA:

W/PopupManager(10725): You have not specified a View to use as content view for popups. Falling back to the Activity content view which may not work properly in future versions of the API. Use setViewForPopups() to set your content view. 

He llamado setViewForPopups () desde dentro de la actividad de mis pop-ups no se muestran en, sin embargo, nunca he visto.

¿Cómo llamar a setViewForPopups () para que toda la aplicación nevers vea los mensajes WARNING mostrados arriba?

He encontrado una solución, utilizando este código

  Games.setViewForPopups(getApiClient(), getWindow().getDecorView().findViewById(android.R.id.content)); 

Puedo obtener pop-ups para mostrar. Ahora tengo un tema relacionado. La ventana emergente no muestra durante mucho tiempo.

Creo que esto se debe al hecho de que tengo una animación personalizada en esta actividad.

¿Hay alguna manera de aumentar cuánto tiempo un popup es visible?

Esto funcionó para mí.

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(TAG, "onCreate"); setContentView(R.layout.activity_main); // Create the Google API Client with access to Plus, Games and Drive // Also set the view for popups mGoogleApiClient = new GoogleApiClient.Builder(getApplicationContext()) .addConnectionCallbacks(this) .addOnConnectionFailedListener(this) .addApi(Plus.API).addScope(Plus.SCOPE_PLUS_LOGIN) .addApi(Games.API).addScope(Games.SCOPE_GAMES) .addApi(Drive.API).addScope(Drive.SCOPE_APPFOLDER) .setViewForPopups(findViewById(android.R.id.content)) .build(); } 

Android.R.id.content le proporciona el elemento raíz de una vista, sin tener que conocer su nombre / tipo / ID real. Consulta Obtener la vista de raíz de la actividad actual

  • Se ha producido un error en la conexión de GoogleApiClient
  • Cerrar sesión desde google play
  • GameHelper se bloquea en onConnectionFailed ()
  • Servicios de juegos de Google Play: Bienvenido <Name> Popup Inconsistent
  • API de Android IsConnected devolviendo TRUE tras finalizar sesión
  • ¿Cómo recuperar la ID de juegos de google con la nueva actualización de juegos de Google ID de jugador?
  • BaseGameActivity y herencia múltiple
  • ¿Hay una solución para obtener el Leaderboard público con getLeaderboardIntent ()?
  • No se pudo iniciar sesión. Compruebe la conexión de red e inténtelo de nuevo.
  • Solo se muestra la tabla de líderes para los probadores
  • Error de Google Play Services - Informe de errores Incomprensible
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.