2017-10-17 7 views
0

Google Play disponibilité des services est vérifiée dans onResume:Comment vérifier correctement la disponibilité des services google play?

override fun onResume() { 
    super.onResume() 
    verifyGooglePlayServicesAvailability() 
} 

La boîte de dialogue de getErrorDialog est de montrer si la vérification échoue:

availability.getErrorDialog(this, status, RESOLVE_GOOGLE_PLAY_SERVICES_UNAVAILABILITY_REQUEST).show() 

Mais pour une raison quelconque la boîte de dialogue apparaît à nouveau une fois l'erreur résolu. Je n'ai pas trouvé d'exemple sur la façon de mettre en œuvre les vérifications dans la documentation. Ceci est mon approche:

private fun verifyGooglePlayServicesAvailability() 
{ 
    val availability = GoogleApiAvailability.getInstance() 
    val status = availability.isGooglePlayServicesAvailable(this) 
    if (status != ConnectionResult.SUCCESS) 
     availability.getErrorDialog(this, status, RESOLVE_GOOGLE_PLAY_SERVICES_UNAVAILABILITY_REQUEST).show() 
} 

Répondre

0

En effet, un dialogue se met au premier plan et l'activité en arrière-plan afin que votre onResume est appelé plusieurs fois. Envisagez de le déplacer vers votre onCreate ou si vous en avez besoin dans OnResume, considérez un drapeau pour éviter de le vérifier deux fois s'il est manipulé.