TUTORIAL PARA EMPEZAR A CREAR APLICACIONES EN ANDROID. MANUAL BASICO DE ANDROID

Aqui encontraras los conceptos basicos para empezar a entender como crear aplicacionen en Android.
Características básicas del Android. Estructura del Android. Carpetas o directorios de una aplicación en Android

Características básicas del Android

El Android se basa en una versión modificada del Linux y fue lanzado con una licencia de Apache.
Tiempo de ejecución de Android: En la misma capa que las bibliotecas, el tiempo de ejecución de Android proporciona un conjunto de bibliotecas del núcleo que permiten a los desarrolladores escribir aplicaciones de Android utilizando el lenguaje de programación Java.

Aplicaciones: Las aplicaciones que se incluyen con el dispositivo Android, así como las aplicaciones se descargan y se instalan desde el Android Market. Todas las aplicaciones que se escriben se encuentran en esta capa.
Almacenamiento o Storage: Usa como base de datos relacional SQL Lite
Colectividad: Es compatible con GSM / EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE y WiMAX.
Mensajería: SMS y MMS.
Navegador de Internet: Es compatible con todos los navegadores basados en el WebKit de código abierto, junto con el motor JavaScript V8 de Chrome
Multimedia: Compatible con los siguientes formatos de archivos H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, y BMP
Compatible con pantallas multicaules. Soporta aplicaciones multitarea. Soporta conexiones de Internet cuyo punto de acceso es de alámbrico / inalámbrico
Tiene proveedores de contenidos propios lo que permite compartir recursos de diferentes aplicaciones.
Dispone de servicios locales los cuales solamente son accesibles por la aplicación que aloja el servicio y servicios remotos de otras aplicaciones que ese ejecutan en el mismo dispositivo

Estructura del Android

Al diseñar una aplicación en Android tenemos que definir los siguientes componentes Vista (View), Actividad (Activity), Fragmento (Fragment), Intención (Intent).
Cuando la pantalla del dispositivo es pequeña la aplicación de android solamente tendrá una vista, una actividad y un fragmento.
Vista o View: Las vistas son la interfaz de usuario (UI) elementos que forman los bloques básicos de una interfaz de usuario de construcción. Una vista puede ser un botón, una etiqueta, un campo de texto, y otros elementos de la interfaz. Las vistas se utilizan como recipientes para visitas, lo que significa que hay una jerarquía de puntos de vista en la interfaz de usuario.
Actividad o Activity: Una actividad representa una pantalla y coincide con una vista.
Fragmento o Fragment: Los fragmentos son sub-actividades. Una actividad puede contener varios fragmentos.
Intención o Intent: Una intención es una tarea especifica como transmitir un mensaje, Iniciar un servicio, iniciar una actividad, mostrar una página web o una lista de contactos, marcar un número de teléfono o responder a una llamada telefónica.
Las intenciones también son utilizados por el sistema para notificar a su aplicación de eventos específicos, como la llegada de un mensaje de texto. Pueden ser explícita o implícita. Si simplemente se quiere mostrar una dirección URL, el sistema decide qué componente cumplirá la intención.

Carpetas o directorios de una aplicación en Android

Cuando creamos la estructura de una aplicación en Android hay que crear las siguientes carpetas. Las aplicaciones en Android NO admite las carpetas anidadas.

Carpetas y archivos obligatorias
AndroidManifest.xml: Es el archivo en el que se describe la aplicación Android. Este archivo define entre otras cosas las actividades, proveedores de contenidos, servicios y receptores de la intención de la aplicación. También puede utilizar este archivo para definir de forma declarativa permisos requeridos por la aplicación, así como los permisos específicos de subvención a otras aplicaciones
src: Contiene los archivos con el código fuente de la aplicación.
res: Tiene los recursos de la aplicación, es la carpeta principal de la aplicación.
Carpetas y archivos NO obligatorias
assets: Colección arbitraria de carpetas y archivos.
drawable: Contiene las imágenes o archivos de imagen-descriptores utilizados por la aplicación.
animator: Una carpeta que contiene los archivos XML que describen las animaciones utilizadas por la aplicación
layout: Una carpeta que contiene puntos de vista de la aplicación.
menu: Una carpeta que contiene los archivos XML para los menús de la aplicación.
values: Una carpeta que contiene otros recursos utilizados por la aplicación. Por ejemplo matrices, estilos y colores
xml: Una carpeta que contiene los archivos XML adicionales utilizados por la aplicación
raw: Tiene los datos adicionales requeridos por la aplicación que no son XML

Ejemplo de archivo AndroidManifest.xml

Ejemplo de AndroidManifest