21. Android: primeros pasos

Primeros pasos para la programación con Android

Para empezar a programar aplicaciones Android seguimos estos pasos:

1. Descargamos el IDE que Google recomienda para la creación de apps, es decir Android Studio. Podemos descargar Android Studio buscando en Google "android studio", a continuación pulsamos sobre el botón verde "Descargar" :


Android Studio se puede instalar sobre los sistema operativos más difundidos: Linux, Windows y MacOS. En el caso del instalador de Android Studio para Windows, lo que se descarga es un archivo .exe.

2. Una vez descargado, ejecutamos el archivo haciendo doble click sobre él.

3. Tran instalar Android Studio, e intentar inicializarlo, puede que nos aparezca el siguiente cuadro de dialogo:


En dicho cuadro de dialogo, se nos comunica que esta ocurriendo una de las siguientes posibilidades:

Posibilidad 1. Para desechar esta posibilidad, comprobaremos que el kit de desarrollo de Java (Java Development Kit o JDK) no esta instalado en nuestro sistema. Para ello acudimo a la ruta C:\Program Files\Java\. Si esa ruta no existe o dentro no hay un directorio que comienza por "jdk", significa que tenemos instalado JDK. En ese caso vamos a instalarlo. Para ello buscamos en Google "install jdk", y pulsamos sobre el primer resultado. Nos deberá de aparecer esta página:



Y en esa página clicamos sobre el enlace que dice "Accept License Agreement" (en rojo en la imagen anterior) para aceptar la licencia, y despues clicamos sobre el link que dice "jdk-8u151-windows-x64.exe" (en rojo en la imagen anterio) si nuestro sistema operativo es de 64 bits. A continuación, se empezará a descargar un archivo .exe de unos 200 MB, que deberemos de ejecutar.

Una vez que hemos instalado JDK, volvemos a intentar abrir Android Studio. Si vuelve a aparecer el mensaje anterior, tendremos que crear la variable de entorno JAVA_HOME siguiendo los siguientes pasos:
  1. Acudo al Panel de control de Windows.
  2. Pulso sobre "Sistema y seguridad" (iconoo escudo de colores).
  3. Pulso sobre "Sistema" (icono monitor fondo azul).
  4. Pulso sobre "Configuración avanzada del sistema" en la parte izquierda.
  5. Pulso sobre "Variables de entorno" en la parte inferior.
  6. En la sección "Variables del sistema" pulso sobre "Nueva...", y en el formulario que aparece introduzco lo siguiente:
  • Nombre de la variable: JAVA_HOME
  • Valor de la variable: C:\Program Files\Java\directorio_de_jdk_por_ejemplo_jdk1.8.0_151
Luego pulsamos sobre Aceptar e intentamos abrir de nuevo Android Studio. Ahora sí debería de abrirse.

Un inciso: diferencia entre JRE y JDK

JRE: significa Java Runtime Environment (Entorno de Ejecución de Java). Es propiamente la maquina virtual de Java (JVM). El JRE se instala en el sistema operativo y gracias a él podemos ejecutar la misma aplicación Java en distintos sistemas operativos.

JDK: significa Java Development Kit (Kit de Desarrollo de Java), y son una seríe de herramientas y compiladores que nos permiten crer y compilar programas Java. El JDK se instalá también el sistema operativo, e incluye el JRE, de manera que si instalamos el JDK no hace falta instalar el JRE aparte.

Como funciona Java en 4 pasos


Bienvenida a Android Studio y configuración de nuestra nueva aplicación.

Una vez que ha aparecido la ventana de bienvenida de Android Studio, eligiremos la opción "Start a new Android Studio Project". Y a continuación la ventana desde donde estableceremos información básica sobre nuestra nueva aplicación. En un principio vamos a dejar los datos que aparecen por defecto. Resaltar el campo que se llama "Company name": en este campo no es necesario poner el nombre del dominio web de nuestra empresa. Sí hay que tener en cuenta que el valor de "Company name" es un nombre que identifica nuestra apliación de manera única en Google Play Store. En cualquier caso, se puede cambiar posteriormente.


A continuación nos aparece la siguiente ventana:



En ella vamos a elegir el tipo de dispositivos para los que queremos que soporte nuestra aplicación. 

Debajo de la opcion "Phones and tablets", aparece un menú desplegable con las siguiente opciones:


La opción por defecto es API15, pero vemos que aparecen otras opciones: API16, API17, API18, etc. Además, si nos fijamos bien, en la segunda linea de esta ventana aparece escrito lo siguiente:

"Low API levels target more devices, but offer fewe API features" 

que en es español quiere decir algo asi como:

"Las APIs de bajo nivel soportan mas dispositivos, pero ofrecen menos funcionalidades."

Para comprender las anteriores sentencias, sería bueno saber qué es un API...

¿Que es una API?

API significa "Application Programming Interface", algo así como "Interfaz de programación de aplicaciones". En realidad una API es la parte de una librería que está expuesta al programador, o sea la parte de la librería de la que va a hacer uso el programador.

En la siguiente imagen, esta representada una librería como un circulo. Como vemos la parte que esta expuesta al programador, o sea el borde del circulo, sería la API. El programador podrá ver también el "interior" de la libreria (parte blanca), pero solo tendrá que hacer uso de la API.

 

Recordar, que una librería es un conjunto de archivos con codiǵo que realizan una funcionalidad diferenciada, por ejemplo, Java, cuenta con librerías externas que permiten manipular imágenes: cambiar de formato de la image, etc,. O por ejemplo, también existen librerías que permiten manipular videos en Java: reproducción, cambio de formato, etc.

Si hacemos una busqueda en Google tal que: "library java video", nos aparecerá una pregunta de StackOverflow, donde como respuesta se mencionan un par de librerías, una de ellas "gstreamer".

Una librería puede estar asociada al funcionamiento del dispositivo, es decir me permite controlar el hardware del dispositivo. Ejemplo: imagenemos que quiero hacer una aplicación que me permita recibir con más potencia las señales WIFI. En ese caso será necesario hacer uso de la la parte de la API de Android que permite controlar la antena WIFI (ancho de banda, frecuencia, etc).

Podemos ver los cambios que hay entre las distintas versiones de las APIs por ejemplo aquí (este caso de la la API24 con respecto a la 23):

https://developer.android.com/sdk/api_diff/24/changes.html

Ahora que sabemos lo que es un API, Tenemos por tanto, una serie de APIs que van asociadas a la versión del sistema operativo Android.


Las versiones más altas de la API incluyen funcionalidades extra o mejoradas para, por ejemplo, controlan el hardware más novedoso que pueda incorporar un teléfono móvil, como por ejemplo los chips NFC que permiten comunicaciones entre dos dispositivos, para por ejemplo realizar transferencias monetarías entre ellos.

Si usamos un nivel de API muy alto podremo acceder a las funcionalidades del chip NFC, pero no todos los dispositivos podrán aprovecharse de nuestra aplicación. Es decir, si decidimos usar un API muy alta, podemos, no hay problema, pero deberemos de ser conscientes de que nuestra aplicación no a va funcionar en una buena parte de los dispositivos que están funcionando actualmente.

Las APIs más modernas son compatibles con las APIs más antiguas, pero no al revés como es natural.



































Comentarios

Entradas populares de este blog

5. CSS: formatear un documento HTML

34. Java: final, static, constantes, colecciones

29. Android: tipos de layouts