viernes, 29 de marzo de 2019

QUE SON LOS ARCHIVOS TIPO CLASE.JAVA.

QUE SON LOS ARCHIVOS TIPO CLASE.JAVA.
Los archivos .java contienen el código fuente (entendible por humanos) que en un momento dado podemos modificar con un editor de textos y suelen encontrarse en carpetas de nombre src (source). Los archivos .class contienen el bytecode (no entendible por humanos pero sí por la máquina virtual Java) y suelen encontrarse en carpetas de nombre bin (binary).


La organización de los archivos en carpetas y la presencia de otros adicionales depende del entorno de desarrollo que utilicemos. Además, Java introduce un esquema organizativo a través de paquetes (packages) que comentaremos más adelante.


Para trabajar con proyectos en la mayoría de entornos, incluido BlueJ, debemos tenerlos en un soporte grabable accesible (por ejemplo en una carpeta de nuestro disco duro). No es válido por tanto un cd, dvd, unidad remota restringida o carpeta del disco duro con restricciones. El motivo es que los entornos de desarrollo trabajan grabando información en la carpeta del proyecto que se encuentre activo. Por tanto un soporte no escribible no es adecuado. Si queremos trabajar con un proyecto contenido en un cd o dvd, primero lo copiaremos a nuestro disco duro y después lo abriremos para trabajar con él
Resultado de imagen para imagenes de ejemplos arcichos tipo clase.java



QUE SON LOS ARCHIVOS XML EN UN PROYECTO ANDROID.

QUE SON LOS ARCHIVOS XML EN UN PROYECTO ANDROID. 

XML es uno de los formatos más utilizados para intercambiar información entre aplicaciones de diferentes plataformas. Son ficheros de texto donde los campos o elementos de información que contienen se delimitan mediante pares de etiquetas. Para parsear esos documentos, es decir, para poder leerlos y tratarlos, empleamos principalmente dos modelos: SAX y DOM.


Ejemplo:

jueves, 28 de marzo de 2019

ESTRUCTURAS DE CARPETAS DE UN PROYECTO ANDROID.

ESTRUCTURAS DE CARPETAS DE UN PROYECTO ANDROID.
SRC

Bajo la organización de paquetes, esta carpeta tiene todo el código de fuente. Estarán ubicadas todas las clases Java de la aplicación.


GEN 

Aquí es donde se genera el código para todos los recursos definidos en la carpeta res. Así es como se puede acceder a los disenos y controles definidos dentro de su código.



ANDROI PRIVATE LIBRARIES 



las bibliotecas de Android permiten almacenar el código fuente y los recursos que utilizan otros proyectos de Android. Las Herramientas de desarrollo de Android (ADT) compilan el contenido de la biblioteca en el proyecto de Android creando un archivo JAR

ASSETS 



En esta carpeta irían todos los recursos extra que puedes usar y que no sean de Android, por ejemplo fuentes y archivos multimedia.


BIN
Es una área de ensayo para preparar sus archivos para ser empaquetados en su APK.



LIBS 

Puede contener las librerías de Java externas(ficheros.jar) que utilice nuestra aplicación. Normalmente no incluiremos directamente aquí ninguna librería, si no que haremos referencia a ellas en el fichero build.gradle.


RES

Contiene todos los ficheros de recursos necesarios para el poyecto imágenes , layouts, cadenas de texto, etc. Los diferentes tipos de recursos se pueden distribuir entre las siguientes subcarpetas:

/res/drawable/
Contiene las imagenes y otros elementos gráficos usados por la aplicación. Para poder definir diferentes recursos dependiendo de la resolución y densidad de la pantalla del dispositivo se suele dividir en varias subcarpetas:


/drawable(recursos independientes de la densidad)
/drawable-ldpi(densidad baja)
/drawable-mdpi(densidad media)
/drawable-hdpi(densidad alta)
/drawable/xhdpi(densidad muy alta)
/drawable-xxhdpi(densidad muy muy alta)


/res/mipmap/
Contiene los iconos de lanzamiento de la aplicación(el icono que aparecerá en el menú de aplicaciones del dispositivo) para las distintas densidades de pantalla existentes. Al igual que en el caso de las carpetas /drawable, se dividirá en varias subcarpetas dependiendo de la densidad de la pantalla:


/mipmap-mdpi
/mipmap-hdpi
/mipmap-xhdpi
...




/res/layout/

Contiene los ficheros de definición XML de las diferentes pantallas de la interfaz gráfica. Para definir distintos layouts dependiendo de la orientación del dispositivo se puede dividir también en subcarpetas:







/layout (vertical)

/layout-land(horizontal)


/res/menu/

Contiene la definición XML de los menús de la aplicación.

/res/values/

Contiene otros ficheros de XML de recursos de la aplicación, como por ejemplo de cadenas de texto(strings.xml),arrays(styles.xml), colores(colors.xml), arrays de valores(arrays.xml), tamanos (dimens.xml), etc.

viernes, 22 de marzo de 2019

Layouts utilizados en Android.

Layouts utilizados en Android.
Relative: nos permite colocar cada elemento de forma relativa a cualquier elemento dentro del propio RelativeLayout.



TableLayout: dentro de este Layout podemos definir filas y columnas para situar los elementos. En Android Studio, directamente al arrastrar un elemento nos aparecerá una cuadricula verde en la que podremos ir situando los distintos elementos. Básicamente, es una matriz de elementos.



Fragment: Un Fragment representa un comportamiento o una parte de la interfaz de usuario en una Activity. Puedes combinar múltiples fragmentos en una sola actividad para crear una IU multipanel y volver a usar un fragmento en múltiples actividades. Puedes pensar en un fragmento como una sección modular de una actividad que tiene su ciclo de vida propio, recibe sus propios eventos de entrada y que puedes agregar o quitar mientras la actividad se esté ejecutando (algo así como una "subactividad" que puedes volver a usar en diferentes actividades).





LinearLayout: coloca los elementos unos detrás de otros de manera lineal, o bien de forma vertical o bien de forma horizontal.
Tanto el Layout vertical como el horizontal pueden ser padres e hijos unos de otros.  El elemento padre es capaz de contener uno o mas hijos, es decir tenemos un LinearLayout(Vertical) y dentro de éste un LinearLayout(Horizontal), es decir, el primero es el padre y el segundo es el hijo, porque el padre contiene al hijo.
FrameLayout: generalmente este Layout suele usarse para mostrar un único elemento en la UI. Android Stuido nos permite posicionar hasta 9 elementos, pero si posicionamos dos elementos en el mismo recuadro verde veréis que se sobreponen y no son legibles.
LinearHorizontal: Tanto el Layout vertical como el horizontal pueden ser padres e hijos unos de otros.  El elemento padre es capaz de contener uno o mas hijos, es decir tenemos un LinearLayout(Vertical) y dentro de éste un LinearLayout(Horizontal), es decir, el primero es el padre y el segundo es el hijo, porque el padre contiene al hijo.
Include:Al diseñar el archivo de diseño de Android, a veces es posible que necesitemos reutilizar componentes más grandes que requieran un diseño especial. Para lograr esto de manera eficiente, podemos usar la <include/> etiqueta para incrustar otro diseño dentro del diseño actual.

jueves, 21 de marzo de 2019

Mi primera aplicación Android en Eclipse.

Mi primera aplicación Android en Eclipse.

Lo primero que debemos hacer es crear un nuevo proyecto de Android, para eso le damos, en el menú superior, a File/New/Other… y en la ventana que nos saldrá seleccionamos Android Application Proyect:
pproyecAndroid1

En la siguiente ventana tendremos que meter los datos de nuestra aplicación:
Hola Mundo 2
Como se puede ver en la imagen, el primer campo indica el nombre que tendrá nuestra aplicación, el segundo, el nombre de nuestro proyecto, que no tiene por qué ser el mismo que el de la aplicación, y el último, el paquete en el que se encuentra. Un Paquete en Java es un contenedor de clases que permite agrupar las distintas partes de un programa cuya funcionalidad tienen elementos comunes. En C# lo llamaríamos namespace.
Build SDK se refiere a para qué versión de Android estamos creando la aplicación, no podrá utilizar clases o métodos de versiones superiores. Minimum Required SDK indica qué versión mínima debe tener el dispositivo para poder utilizar el programa.
Le daremos a Next y nos saldrá una ventana en la que podemos personalizar un icono para nuestra aplicación, una vez puesto a nuestro gusto le daremos de nuevo a Next.
Hola Mundo 3
En la siguiente ventana tenemos que elegir qué tipo de actividad vamos a utilizar para nuestra aplicación, para esta aplicación vamos a dejarlo como está por defecto y le daremos de nuevo a Next:
Hola Mundo 4
Ahora tenemos que darle un nombre a Nuestra actividad, y otro al layout que va a tener. El nombre de la actividad pondremos uno que nos recuerde qué va a hacer dicha actividad, al layout, por ser el que va a mostrarse de inicio, lo llamaremos main. Navigation Type y Hierarchical Parent no lo tocaremos por ahora. Title es el título de la aplicación. Una vez configurados estos parámetros, le daremos a Finish:
Hola Mundo 5
Al principio en nuestro proyecto pueden aparecer errores, esto es porque se están organizando internamente todas las librerías que necesita el proyecto, pero una vez que se haya construido por completo, estos errores desaparecerán automáticamente.
Bien, una vez creado el proyecto tendremos el código de nuestra aplicación en src/nombrepaquete/nombreactividad.java, y la vista la tendremos definida en un archivo xml, situado en res/layout/main.xml:





Estructura del proyecto
Estructura del proyecto

El código que se se inserta automáticamente en nuestra actividad:
Hola Mundo 7
La apariencia de nuestra aplicación:
Hola Mundo 8
Y el código xml que define esta apariencia:
Hola Mundo 9

viernes, 8 de marzo de 2019

Entrono de eclipse con plugin Android



Entrono de eclipse con plugin Android
Menú: Incluye todas las opciones del entorno y algunos iconos de acceso directo a las mas empleadas 

Perspectiva: Permite alternar entre las diferentes perspectivas que haya abiertas

Control del proyecto: Permite controlar el contenido del proyecto los archivos que lo componen

Propiedades: utilizadas en muchas ocasiones para editar propiedades del archivo editado

Editor: La zona mas amplia para editar el contenido de los archivos ya sean visualmente o en modo del texto



Control ejecución: Incluye todo lo necesario para controlar y monitorizar la ejecución de nuestro proyecto.