¿Qué es Jetpack Compose?

Jetpack Compose es la biblioteca de IU de Android más reciente que ha tomado la plataforma de desarrollo móvil de Android por sorpresa. Con Jetpack Compose, los desarrolladores pueden construir aplicaciones de alta calidad y sofisticadas que son más fáciles de mantener y escalar. La introducción de Jetpack Compose representa un cambio significativo en la forma en que se crea la interfaz de usuario de una aplicación de Android. En lugar de trabajar con una jerarquía de vistas de Android, Jetpack Compose utiliza un enfoque de programación declarativa para definir la IU de una aplicación. Esto significa que los desarrolladores pueden escribir código que describe cómo debe verse la interfaz de usuario de una aplicación, en lugar de manipular directamente los objetos de vista. Jetpack Compose también viene con una serie de herramientas que facilitan el diseño y la personalización de la interfaz de usuario de una aplicación. Desde una amplia variedad de widgets personalizados hasta la capaci...

Verificar Google Play Services

Para que nuestra aplicación pueda ejecutarse si necesitamos Google Play Services, tenemos que hacer la verificación previa.

Esto lo podemos lograr fácilmente agregando las siguientes líneas de código en nuestra actividad de lanzamiento o Splash Screen si es que la tenemos sino, en la primera actividad de nuestra aplicación.

Creamos el método checkPlayServices() con  el código

errorDialog es una variable global de la actividad.

Dialog errorDialog;

private boolean checkPlayServices() {

    GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance();

    int resultCode = googleApiAvailability.isGooglePlayServicesAvailable(this);

    if (resultCode != ConnectionResult.SUCCESS) {
       if (googleApiAvailability.isUserResolvableError(resultCode)) {

       if (errorDialog == null) {
           errorDialog = googleApiAvailability.getErrorDialog(this, resultCode, 2404);
           errorDialog.setCancelable(false);
       }

       if (!errorDialog.isShowing())
           errorDialog.show();
        }
     }

    return resultCode == ConnectionResult.SUCCESS;
}


Y luego, en el método onResume(), hacemos la llamada al método checkPlayServices()

@Override
protected void onResume() {
    super.onResume();
    if (checkPlayServices()) {
        startApp();
    }
}


¿Por qué en onResume() y no en onCreate()? Sencillamente porque en onCreate() la llamada se va a ejecutar una sola vez; onResume() llamará checkPlayServices() hasta que actualicemos Google Play Service o cerremos la aplicación, evitando así que iniciemos nuestra app sin la versión más reciente de estos servicios de Google.

Comentarios

Entradas más populares de este blog

¿Qué es Jetpack Compose?

Hacer la barra de status transparente en Android.

Solicitar permisos en Android en tiempo de ejecución más fácilmente