Fundamentos de desarrollo de aplicaciones de Android para principiantes

Android es un sistema operativo construido básicamente para teléfonos móviles. Se basa en el kernel de Linux y otro software de código abierto y está desarrollado por Google . Se utiliza para dispositivos móviles con pantalla táctil, como teléfonos inteligentes y tabletas. Pero hoy en día, estos se utilizan en automóviles, televisores, relojes, cámaras, etc. con Android Auto. Ha sido uno de los sistemas operativos más vendidos para teléfonos inteligentes. El sistema operativo Android fue desarrollado por Android Inc. que Google compró en 2005. Varias aplicaciones (apps) como juegos, reproductor de música, cámara, etc. están diseñadas para estos teléfonos inteligentes para ejecutarse en Android. La tienda Google Play cuenta con más de 3,3 millones de aplicaciones. La aplicación está desarrollada en una aplicación conocida como Android Studio.Estas aplicaciones ejecutables se instalan a través de un paquete llamado APK (Android Package Kit)

Fundamentos de Android

1. Lenguajes de programación de Android

En Android, básicamente, la programación se realiza en dos lenguajes JAVA o C++ y XML (Extension Markup Language) . Hoy en día también se prefiere KOTLIN. El archivo XML se ocupa del diseño, la presentación, los diseños, el plano, etc. (como front-end), mientras que JAVA o KOTLIN se ocupa del funcionamiento de los botones, las variables, el almacenamiento, etc. (como back-end).

2. Componentes de Android

Los componentes de la aplicación son los componentes básicos de Android. Cada componente tiene su propia función y ciclos de vida, es decir, desde el lanzamiento de una aplicación hasta el final. Algunos de estos componentes también dependen de otros. Cada componente tiene un propósito definido. Los cuatro componentes principales de la aplicación son: 

  • Actividades
  • Servicios
  • Receptores de difusión:
  • Proveedor de contenido:

Actividades: se ocupa de la interfaz de usuario y las interacciones del usuario con la pantalla. En otras palabras, es una interfaz de usuario que contiene actividades. Estos pueden ser uno o más dependiendo de la aplicación. Comienza cuando se inicia la aplicación. Siempre está presente al menos una actividad que se conoce como MainActivity. La actividad se implementa a través de lo siguiente.  

Sintaxis:

public class MainActivity extends Activity{
  // processes
}

Para conocer más actividades, consulte este artículo: Introducción a las actividades en Android

Servicios: los servicios son las acciones en segundo plano realizadas por la aplicación, estas pueden ser operaciones de larga duración, como un usuario que reproduce música mientras navega por Internet. Un servicio puede necesitar otros subservicios para realizar tareas específicas. El objetivo principal de los Servicios es proporcionar un funcionamiento ininterrumpido de la aplicación sin interrumpir la interacción con el usuario. 

Sintaxis:

public class MyServices extends Services{
  // code for the services
}

Para conocer más servicios, consulte este artículo:  Servicios en Android con ejemplo

Receptores de Difusión: Una Difusión se utiliza para responder a mensajes de otras aplicaciones o del Sistema. Por ejemplo, cuando la batería del teléfono está baja, el sistema operativo Android envía un mensaje de transmisión para iniciar la función o la aplicación Ahorro de batería; después de recibir el mensaje, la aplicación toma la acción adecuada. Broadcast Receiver es la subclase de la clase BroadcastReceiver y cada objeto está representado por objetos Intent. 

Sintaxis:  

public class MyReceiver extends BroadcastReceiver{
   public void onReceive(context,intent){
 }

Para conocer más receptores de transmisión, consulte este artículo:  Receptor de transmisión en Android con ejemplo

Proveedor de contenido: el proveedor de contenido se utiliza para transferir los datos de una aplicación a las demás a pedido de la otra aplicación. Estos son manejados por la clase clase ContentResolver. Esta clase implementa un conjunto de API (interfaz de programación de aplicaciones) que permite que las otras aplicaciones realicen las transacciones. Cualquier proveedor de contenido debe implementar la clase principal de la clase ContentProvider. 

Sintaxis:  

public class MyContentProvider extends ContentProvider{
   public void onCreate()
   {}
}

Para obtener más información sobre proveedores de contenido, consulte este artículo:  Proveedores de contenido en Android con ejemplo

3. Diseño estructural de Android Studio

El diseño estructural básico de Android Studio se proporciona a continuación:

Structural Layout Of Android Application

La figura anterior representa las diversas estructuras de una aplicación. 

Carpeta de manifiesto: Android Manifest es un archivo XML que es la raíz del conjunto de fuentes del proyecto. Describe la información esencial sobre la aplicación y las herramientas de compilación de Android, el sistema operativo Android y Google Play. Contiene el permiso que una aplicación puede necesitar para realizar una tarea específica. También contiene las funciones de hardware y software de la aplicación, lo que determina la compatibilidad de una aplicación en Play Store. También incluye actividades especiales como servicios, receptor de transmisión, proveedores de contenido, nombre del paquete, etc.

Carpeta Java: La carpeta JAVA consta de los archivos Java necesarios para realizar la tarea en segundo plano de la aplicación. Consiste en la funcionalidad de los botones, cálculo, almacenamiento, variables, brindis (pequeño mensaje emergente), función de programación, etc. El número de estos archivos depende del tipo de actividades creadas.

Carpeta de recursos: la carpeta res o Resource consta de los diversos recursos que se utilizan en la aplicación. Esto consta de subcarpetas como dibujable, diseño, mipmap, sin formato y valores. El dibujable consiste en las imágenes. El diseño consta de los archivos XML que definen el diseño de la interfaz de usuario. Estos se almacenan en res.layout y se accede a ellos como clase R.layout. El raw consta de archivos de recursos como archivos de audio o archivos de música, etc. Se accede a estos a través de R.raw.filename. Los valores se utilizan para almacenar las strings codificadas (consideradas seguras para almacenar valores de string), valores, enteros y colores. Se compone de varios otros directorios como:

  • R.array :arrays.xml para arrays de recursos
  • R.integer : integers.xml para enteros de recursos
  • R.bool: bools.xml para recurso booleano
  • R.color :colors.xml para valores de color
  • R.string: strings.xml para valores de string
  • R.dimen: dimens.xml para valores de dimensión
  • R.style: estilos.xml para estilos

Gradle Files : Gradle es un conjunto de herramientas avanzado, que se utiliza para administrar el proceso de compilación, que permite definir las configuraciones de compilación personalizadas y flexibles. Cada configuración de compilación puede definir su propio conjunto de código y recursos mientras reutiliza las partes comunes a todas las versiones de su aplicación. El complemento de Android para Gradle funciona con el kit de herramientas de compilación para proporcionar procesos y configuraciones configurables que son específicas para compilar y probar aplicaciones de Android. Gradle y el complemento de Android se ejecutan independientemente de Android Studio. Esto significa que puede crear sus aplicaciones de Android desde Android Studio. La flexibilidad del sistema de compilación de Android le permite realizar configuraciones de compilación personalizadas sin modificar los archivos de origen principales de su aplicación. 

Diseño básico Puede definirse en una estructura de árbol como: 

Project/
   app/
      manifest/
         AndroidManifest.xml
   java/
      MyActivity.java   
      res/
         drawable/  
            icon.png
            background.png
         drawable-hdpi/  
            icon.png
            background.png  
         layout/  
            activity_main.xml
            info.xml
         values/  
            strings.xml 

4. Ciclo de vida de la actividad en la aplicación de Android 

El ciclo de vida de la actividad en la aplicación de Android se puede mostrar a través de este diagrama: 

Activity Lifecycle in Android with Demo App

Estados del ciclo de vida de Android:

  1. OnCreate: se llama cuando se crea la actividad por primera vez.
  2. OnStart: se llama cuando la actividad se vuelve visible para el usuario.
  3. OnResume: Esto se llama cuando la actividad comienza a interactuar con el usuario.
  4. OnPause: se llama cuando la actividad no es visible para el usuario.
  5. OnStop: Esto se llama cuando la actividad ya no es visible.
  6. OnRestart: se llama cuando se detiene la actividad y se reinicia de nuevo.
  7. OnDestroy: Esto se llama cuando la actividad se va a cerrar o destruir.

Para saber más sobre el ciclo de vida de la actividad en Android, consulte este artículo: Ciclo de vida de la actividad en Android con la aplicación de demostración

Para comenzar su viaje en Android, puede consultar estos tutoriales:

Publicación traducida automáticamente

Artículo escrito por kartikeya shukla 1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *