viernes, 31 de marzo de 2017

13- estructura de de carpeta mde proyecto android

Estructura de de carpeta mde proyecto android

Directorio SRC

Se encuentra toda la lógica de aplicación, todas las clases programadas en JAVA. Dentro de ella puedes definir distintos paquetes, donde puedes dividir en capas tus reglas de negocio.

Android Library

Aquí se encuentran todas las librerías propias del SDK de android, dependiendo la versión elegida al crear el proyecto tendrá una versión u otra.

Directorios RES

Se encuentran todos los archivos con los recursos que usan la aplicación. Las imágenes, archivos de idiomas, estilos, etc.. Un pequeños listado de estos puede ser:
  • Drawable => Carpeta con todas las imágenes de la app. Se subdivide en múltiples carpetas desde la versión 1.6, que contienen las imágenes en distintas resoluciones y tamaños que se usarán dependiendo el dispositivo usado.
  • Directorio layout => Aquí se encuentran las distintas “pantallas” de la aplicación, es decir, los archivos xml con las interfaces visual asociadas a las activities.
  • Values => Carpeta con los xml de contenido de la app. En ella puede haber definidas las constantes de la aplicación, dando la posibilidad del multidioma. También puedes definir estilos para tus componentes. Y todo tipo de configuraciones.

Directorio bin

Aquí se encuentran todos los archivos generados por la propia app. Como sabeis, android usa la máquina virtual dalvik, primero se traduce a los típicos archivos .class de java y posteriormente es traducido a los archivo .dex propios de android.
También esta el ejecutable de la aplicación "apk", sería el equivalente a los "exe" de windows. Es el archivo que deberías instalar en cualquier teléfono android para probar la aplicación.

Directorio gen

En esta carpeta esta el archivo R.class, éste contiene lo identificadores los recursos usados por tu proyecto: imágenes, layout, etc...
Si abrís el archivo R.java, veréis los valores internos que se da a cada uno de los identificadores de tu aplicación.

Directorio assests

Carpeta donde se encuentran los archivos auxiliares de tu aplicación: imágenes, audios, vídeos... la diferencia con los que se encuentran con la carpeta "RES", es que los archivos incluidos aquí no generarán un identificador dentro del archivo R.class anteriormente descrito.
Para usar estos archivos, en vez de referenciarlos por un ID, habría que usar la ruta física como cualquier otro archivo

Directorio lib

Aquí irán las librerías externas importados que necesites. Por ejemplo, si deseas meter publicidad en tu app, aquí ira la librería necesaria para ello.

Andoid Manifest

Archivo básico de configuración de toda aplicación android. En el se definen todas las activities de la app, sus permisos, etc... En este artículo se explica con detalle: que es el android manifest
Si quieres leer más articulos como este, sigueme => @ander_gs

10-como instalar eclipse

Como instalar eclipse

Visita la página oficial de Eclipse en cómo descargar e instalar Eclipse IDE


Una vez estés en la página de Eclipse, fíjate en la parte derecha de la ventana. Allí verás un botón color naranja, el cual dice “Download”. Este es el botón a presionar para poder descargar Eclipse. Así que dale clic al botón “Download” como muestra la Imagen

Haz clic en el botón Download en cómo descargar e instalar Eclipse IDE

 Al darle clic al botón “Download”, pasarás a la página de selección del sistema operativo y la versión. Aquí verás un texto que dice “Eclipse … Release for” y al lado un menú desplegable. El menú desplegable es para que escojas tu sistema operativo. Seas usuario de WindowsLinux o Mac la buena noticia es que Eclipse está disponible para todos esos sistemas operativos. Selecciona tu sistema operativo del menú desplegable como muestra la Imagen


Selecciona tu sistema operativo Windows, Linux o Mac en cómo descargar e instalar Eclipse IDE

 Luego notarás más abajo, que se te muestra el sistema operativo seleccionado así como las arquitecturas de las versiones de Eclipse, es decir 32 bit y 64 bit. Selecciona la que corresponda según tu computadora. En las PCs modernas comúnmente debes seleccionar 64-bits. Si tu PC es un poco antigua es posible que solo tenga soporte para 32-bits. Haz la selección que corresponda como muestra la Imagen #4.


Selecciona tu arquitectura 32 bit o 64 bit en cómo descargar e instalar Eclipse IDE


Ahora pasarás a la página de la descarga en sí. Aquí verás a mano izquierda un botón que dice “Download”. Haz clic en el mismo como muestra la Imagen #5.


Botón para descargar Eclipse en cómo descargar e instalar Eclipse IDE


Al darle clic al botón “Download” comenzará la descarga. El archivo pesa algunos 40MB así que dale tiempo a que termine. Una vez el archivo de Eclipse esté descargado, dale clic al mismo como muestra la Imagen #6.



Haz clic en el archivo descargado en cómo descargar e instalar Eclipse IDE


Al darle clic al archivo descargado de Eclipse, se activará el eclipseinstaller o instalador de Eclipse. Antes, instalar Eclipse era algo complicado. Pero ahora este instalador te guiará en el proceso para instalar el IDE de una forma fácil y amena. Puedes ver el instalador en la Imagen #7.


Ventana del eclipseinstaller en cómo descargar e instalar Eclipse IDE


La siguiente pantalla del instalador de Eclipse te mostrará todas las versiones disponibles de esta herramienta. En este artículo estamos bajo la presunción de que eres un desarrollador de Java. Por lo tanto debes seleccionar la primera opción, la que dice “Eclipse IDE for Java Developers” la cual se muestra en la Imagen #8.


Selecciona la opción Eclipse IDE for Java Developers en cómo descargar e instalar Eclipse IDE


Cuando le des clic a la opción “Eclipse IDE for Java Developers“, pasarás a la ventana de preferencias. El primer campo que verás allí es el que dice “Installation folder” seguido de una caja de texto y un botoncito con un icono de carpeta. En este campo indicarás la carpeta donde deseas instalar Eclipse. Por lo general debes instalarlo en la carpeta por defecto salvo que desees instalarlo en otra. Para cambiar la carpeta haz clic en el botón que ves a mano derecha y selecciona la carpeta correspondiente. Puedes ver este campo en la Imagen #9.


Selecciona la carpeta donde instalar Eclipse en cómo descargar e instalar Eclipse IDE


El otro campo es una casilla que dice “create start menu entry“. Esta casilla lo que hace es anclar Eclipse al menú Inicio. Si así lo deseas deja la casilla marcada, de lo contrario desmárcala. Puedes ver esta casilla en la Imagen #10.


Opción para anclar Eclipse al menú Inicio en cómo descargar e instalar Eclipse IDE


La otra casilla es la que dice “create desktop shortcut“. Esta casilla lo que haces es crear un acceso directo en el Escritorio. Si así lo deseas, deja la casilla marcada. De lo contrario desmarca la casilla “create desktop shortcut“. Esta casilla se muestra en la Imagen #11.


Casilla para crear acceso directo a Eclipse en el Escritorio en cómo descargar e instalar Eclipse IDE


Una vez configures todas las opciones, dale clic al botón “Install” como muestra la imagen #12.


Botón para proceder con la instalación de Eclipse en cómo descargar e instalar Eclipse IDE


Ahora pasarás a la ventana de la licencia. Entonces desplázate hasta la parte inferior derecha de dicha ventana y allí verás un botón que dice “Accept Now“. Dale clic a dicho botón para aceptar la licencia y proseguir con la instalación, como puedes observar en la Imagen #13.


Aceptando la licencia de Eclipse en cómo descargar e instalar Eclipse IDE


A continuación Eclipse procederá a instalarse en tu sistema. La instalación demora unos minutos así que sé paciente. Verás una barra de progreso verde, como muestra la Imagen #14.


Barra de progreso de la instalación del Eclipse IDE en cómo descargar e instalar Eclipse IDE


Una vez termine, la barra de progreso verde se transformará en un botón verde con el texto “Launch” Dale clic al botón “Launch” para lanzar Eclipse, tal y como muestra la Imagen #15.


Botón Launch para lanzar Eclipse en cómo descargar e instalar Eclipse IDE


Al darle clic al botón “Launch“, Eclipse iniciará y verás una ventana como la mostrada en la Imagen


Iniciando el IDE Eclipse en cómo descargar e instalar Eclipse IDE


viernes, 10 de marzo de 2017

9-caracteristicas del sistema operativo andoroid

"caracteristicas del sistema operativo android"

-codigo abierto
-nucleos basados en el kernel 
-adaptable a muchas pantallas
-utiliza squite para almacenamiento de datos
-ofrece detener formas de mensajes
-navegador web basada en webkit incluido , soporte de java y muchos formatos multimedia 
-soporte html atmls adobe flash player 
-incluye emulador de dispositivos, herramientas, para depuracion de memoria y analisis del rendimiento de software
-bluetooth

-multitarea real de aplicaciones 

8-versiones del sistema operativo andoroid

7-arquitectura android

 Arquitectura Android

Como ya se ha mencionado, Android es una plataforma para dispositivos móviles que contiene una pila de software donde se incluye un sistema operativo, middleware y aplicaciones básicas para el usuario. 

        En las siguientes líneas se dará una visión global por capas de cuál es la arquitectura empleada en Android.









  • Aplicaciones: Este nivel contiene, tanto las incluidas por defecto de Android como aquellas que el usuario vaya añadiendo posteriormente, ya sean de terceras empresas o de su propio desarrollo. Todas estas aplicaciones utilizan los servicios, las API y librerías de los niveles anteriores.
  • Framework de Aplicaciones: Representa fundamentalmente el conjunto de herramientas de desarrollo de cualquier aplicación. Toda aplicación que se desarrolle para Android, ya sean las propias del dispositivo, las desarrolladas por Google o terceras compañías, o incluso las que el propio usuario cree, utilizan el mismo conjunto de API y el mismo "framework", representado por este nivel.
        Entre las API más importantes ubicadas aquí, se pueden encontrar las siguientes:
·Activity Manager: Conjunto de API que gestiona el ciclo de vida de las aplicaciones en Android.
·Window ManagerGestiona las ventanas de las aplicaciones y utiliza la librería Surface Manager.
· Telephone Manager: Incluye todas las API vinculadas a las funcionalidades propias del teléfono (llamadas, mensajes, etc.).
· Content Provider: Permite a cualquier aplicación compartir sus datos con las demás aplicaciones de Android. Por ejemplo, gracias a esta API la información de contactos, agenda, mensajes, etc. será accesible para otras aplicaciones.
·  View System: Proporciona un gran número de elementos para poder construir interfaces de usuario (GUI), como listas, mosaicos, botones, "check-boxes", tamaño de ventanas, control de las interfaces mediante teclado, etc. Incluye también algunas vistas estándar para las funcionalidades más frecuentes.
                  ·  Location Manager: Posibilita a las aplicaciones la obtención de                                     información de localización y  posicionamiento.
· Notification Manager: Mediante el cual las aplicaciones, usando un mismo formato, comunican al usuario eventos que ocurran durante su ejecución: una llamada entrante, un mensaje recibido, conexión Wi-Fi disponible, ubicación en un punto determinado, etc. Si llevan asociada alguna acción, en Android denominada Intent, (por ejemplo, atender una llamada recibida) ésta se activa mediante un simple clic.
·XMPP Service: Colección de API para utilizar este protocolo de intercambio de mensajes basado en XML.
  • Librerías: La siguiente capa se corresponde con las librerías utilizadas por Android. Éstas han sido escritas utilizando C/C++ y proporcionan a Android la mayor parte de sus capacidades más características. Junto al núcleo basado en Linux, estas librerías constituyen el corazón de Android.
              Entre las librerías más importantes ubicadas aquí, se pueden encontrar las siguientes:
· Librería libc: Incluye todas las cabeceras y funciones según el estándar del lenguaje C. Todas las demás librerías se definen en este lenguaje.
· Librería Surface Manager: Es la encargada de componer los diferentes elementos de navegación de pantalla. Gestiona también las ventanas pertenecientes a las distintas aplicaciones activas en cada momento.
· OpenGL/SL y SGL: Representan las librerías gráficas y, por tanto, sustentan la capacidad gráfica de Android. OpenGL/SL maneja gráficos en 3D y permite utilizar, en caso de que esté disponible en el propio dispositivo móvil, el hardware encargado de proporcionar gráficos 3D. Por otro lado, SGL proporciona gráficos en 2D, por lo que será la librería más habitualmente utilizada por la mayoría de las aplicaciones. Una característica importante de la capacidad gráfica de Android es que es posible desarrollar aplicaciones que combinen gráficos en 3D y 2D.
·Librería Media Libraries: Proporciona todos los códecs necesarios para el contenido multimedia soportado en Android (vídeo, audio, imágenes estáticas y animadas, etc.)
· FreeType: Permite trabajar de forma rápida  y sencilla con distintos tipos de fuentes.
·  Librería SSL: Posibilita la utilización de dicho protocolo para establecer comunicaciones seguras.
· Librería SQLiteCreación y gestión de bases de datos relacionales. 
·  Librería WebKit: Proporciona un motor para las aplicaciones de tipo navegador y forma el núcleo del actual navegador incluido por defecto en la plataforma Android.
  • Tiempo de ejecución de AndroidAl mismo nivel que las librerias de Android se sitúa el entorno de ejecución. Éste lo constituyen las Core Libraries, que son librerias con mulititud de clases Java y la máquina vistual Dalvik.
  • Núcleo LinuxAndroid utiliza el núcleo de Linux 2.6 como una capa de abstracción para el hardware disponible en los dispositivos móviles. Esta capa contiene los drivers necesarios para que cualquier componente hardware pueda ser utilizado mediante las llamadas correspondientes. Siempre que un fabricante incluye un nuevo elemento de hardware, lo primero que se debe realizar para que pueda ser utilizado desde Android es crear las librerias de control o drivers necesarios dentro de este kernel de Linux embebido en el propio Android.

6- entorno de trabajo para aplicaciones moviles

"Entorno de trabajo para aplicaciones moviles"

Eclipse: es una plataforma de software compuesto por un conjunto de herramientas de programación de código abierto multiplataforma para desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores.

Resultado de imagen para eclipse logo
Xcode: es un entorno de desarrollo integrado (IDE, en sus siglas en inglés) para macOS que contiene un conjunto de herramientas creadas por Apple destinadas al desarrollo de software para macOSiOSwatchOS y tvOS. Su primera versión tiene origen en el año 2003 y actualmente su versión número 8 se encuentra disponible de manera gratuita en el Mac App Store o mediante descarga directa desde la página para desarrolladores de Apple.
Resultado de imagen para xcode logo

carbide c++: es una herramienta para el desarrollo de software en lenguaje C++ destinado a dispositivos que funcionan bajo Symbian OS. Se usa tanto para desarrollar los teléfonos que incorporan dicho OS como para las aplicaciones que ejecutan estos.
Resultado de imagen para carbide c++
NetBeans: es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje de programación Java. Existe además un número importante de módulos para extenderlo. NetBeans IDE2 es un producto libre y gratuito sin restricciones de uso.
Resultado de imagen para netbeans
Java: es un lenguaje de programación de propósito generalconcurrenteorientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra.Resultado de imagen para java

5-sistemas operativos de distribucion libre para dispositivos moviles

"sistemas operativos de distribución liberada para dispositivos móviles"
Los sistemas operativos de distribución libre, en este caso los basados en linux, no solo para pcs, notebooks o netbooks, si no que es posible aportarlos en gran cantidad de dispositivos.

hoy nos toca comentar sobre los sistemas operativos linux para móviles, en los últimos años. muchas empresas relacionadas con este mercado comenzaron a optarse por utilizar el desarrollo de este tipo de plataformas en cada día mejor.

es mas conocido el que tiene mas software desarrollado, esto es sencillo usar, la calidad de programas y juegos casi todos tienen versión para win.

el costo es muy alto.
las nuevas requieren muchos recursos. la mayoría de los virus están echos para win. puedes tener errores de compatibilidad en sistemas nuevos.


4-sistemas operativos comerciales para dispositivos moviles


"sistemas operativos comerciales para dispositivos móviles"

Un sistema operativo móvil o SO móvil es un conjunto de programas de bajo nivel que permite la abstracción de las peculiaridades del hardware específico del teléfono móvil y provee servicios a las aplicaciones móviles, que se ejecutan sobre él. Al igual que los PCs que utilizan Windows o Linux, los dispositivos moviles tienen sus sistemas operativos como AndroidIOS entre otros. Los sistemas operativos móviles son mucho más simples y están más orientados a la conectividad inalámbrica, los formatos multimedia para móviles y las diferentes maneras de introducir información en ellos.


1 para symbian


*ventajas
-no tiene fragmentacion .
-multiarea completa.
-muy poca vunerabilidad.
-actualizaciones constantes durante muchos años.
-muy buena para bajo y alta gama.

*desventajas 

-es interfaz o algo "rustico" y lentitud del sistema.
-falla de algunas aplicaciones esenciales.

2 para android


*ventajas
-aplicaciones de gran calidad y la mayoría gratis.
-acompaña a smart phones con un hardware impresionante.
-da mas libertad de uso gracias a open source.
-personalizacion extrema y probabilidad de ser root.

*desventajas

-la fragmentacion que reproduce el numero de aplicaciones por dispositivo.

3 para ios

*ventajas
-tiene la mayor tienda de aplicaciones del mundo.
-su interfaz grafica es muy agradable y sencilla

*desventajas
-casi todas las aplicaciones son de pago
-poca personalización
-falta de radio fm bluetooth y explorador de archivos 

4 para windows phone

*ventajas
-la interfaz se integra totalmente con las aplicaciones y es muy sencilla de usar
-no tiene fragmentacion

*desventajas
al igual que los ios, tiene limitacion del sistema junto con la tienda de aplicaciones muy escasa

3-procesadores para dispositivos moviles

Procesadores para dispositivos móviles

Arquitectura ARM
La arquitectura ARM domina el mercado de los procesadores para celulares con aproximadamente un 80% del mercado, esto debido a su principal característica; el bajo consumo de energía, característica importante para un dispositivo móvil.

Procesador Hummingbird y Exynos de Samsung
Samsung también tiene su propia linea de procesadores, el mas conocido es el Samsung Hummingbird.

Este procesador esta implementado en el Samsung Galaxy i9000, tiene una arquitectura ARM cortex-A8, sin embargo Samsung a mejorado el diseño lógico  logrando que un mismo numero de procesos sea completado en menos tiempo, obteniendo una ganancia de un 5 a un 10% en el desempeño sobre el diseño original de ARM.+

Procesador Snapdragon de Qualcomm
el Snapdragon también esta desarrollado en base a la tecnologia de 45nm lo que representa un un buen desempeño.

Procesador OMAP de Texas Instruments
El OMAP36x comparte con el resto, la característica de diseño sobre los 45nm en el cual Texas Instruments añadió un acelerador de imágenes llamado IVA 2 que soporta la codificación y decodificación de imágenes por hardware,

Procesador Tegra de Nvidia 

Es el procesador con mas éxito de esta generación  basado en la arquitectura Cortex- A9 con una frecuencia maxima de 1,2 GHz y un diseño de 40nm, posee dos núcleos y cada núcleo posee 64 Kb de memoria cache.}