Cuando utilizamos GooglePlayServicesUtil.IsGooglePlayServicesAvailable para verificar los servicios de Google Play presentes en una aplicación:
private boolean checkPlayServices() { int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this); if (resultCode != ConnectionResult.SUCCESS) { if (GooglePlayServicesUtil.isUserRecoverableError(resultCode)) { GooglePlayServicesUtil.getErrorDialog(resultCode, this, PLAY_SERVICES_RESOLUTION_REQUEST).show(); } else { Log.i(TAG, "This device is not supported."); finish(); } return false; } return true; }
Obtenemos una advertencia de compilación:
Warning CS0618: `Android.Gms.Common.GooglePlayServicesUtil.IsGooglePlayServicesAvailable(Android.Content.Context)' is obsolete: `deprecated' (CS0618)
Revisando la documentación de la API de Google, esta indica que se debe de utilizar : GoogleApiAvailability.isGooglePlayServicesAvailable, ya que GooglePlayServicesUtil.isGooglePlayServicesAvailable() está en desuso.
Entonces, ¿cuál es la “nueva” forma correcta de hacer esto?
private boolean checkPlayServices() { GoogleApiAvailability googleAPI = GoogleApiAvailability.getInstance(); int result = googleAPI.isGooglePlayServicesAvailable(this); if(result != ConnectionResult.SUCCESS) { if(googleAPI.isUserResolvableError(result)) { googleAPI.getErrorDialog(this, result, PLAY_SERVICES_RESOLUTION_REQUEST).show(); } return false; } return true; }
Espero esto les haya ayudado, y recuerden, cualquier duda o comentario relacionado al desarrollo de aplicaciones con Xamarin.Forms, escríbanme por aquí o en Twitter, me encuentran como LucioMSP.
Hasta la próxima!
Más información: Google APIs for Android – GooglePlayServicesUtil