• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Introducción a Android: 10 cosas importantes que hay que entender
 

Introducción a Android: 10 cosas importantes que hay que entender

on

  • 5,882 views

Estan son las diapositivas del taller de Android que se dio en la Universidad Autonoma de Baja California Sur por parte de UNAM MOBILE.

Estan son las diapositivas del taller de Android que se dio en la Universidad Autonoma de Baja California Sur por parte de UNAM MOBILE.
Web: unammobile.net
Tw: @unam_mobile

Statistics

Views

Total Views
5,882
Views on SlideShare
4,743
Embed Views
1,139

Actions

Likes
4
Downloads
0
Comments
2

12 Embeds 1,139

http://yezika-butterfly.blogspot.mx 755
http://yezika-butterfly.blogspot.com 344
http://yezika-butterfly.blogspot.com.es 16
http://yezika-butterfly.blogspot.fr 10
http://yezika-butterfly.blogspot.com.ar 6
http://a0.twimg.com 2
http://yezika-butterfly.blogspot.hk 1
http://paper.li 1
http://yezika-butterfly.blogspot.ca 1
http://yezika-butterfly.blogspot.kr 1
http://yezika-butterfly.blogspot.de 1
http://yezika-butterfly.blogspot.ru 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

12 of 2 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • @fprmaster hola si, claro que habría posibilidad, pueden contactarme directamente a mi Twitter por DM @yezika_ink para hablar de ello :D o bien a mi correo yesica.hernandez@unam.mobi
    Are you sure you want to
    Your message goes here
    Processing…
  • Hola!, que posibilidades tendrias de impartirnos un curso de intro a android en la segunda quincena de junio en el tecnologico de Huejutla, nosotros veriamos lo de los viaticos
    muy buenas diapositivas, tienen logica y ya entendia varias cosas.
    Gracias!
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introducción a Android: 10 cosas importantes que hay que entender Introducción a Android: 10 cosas importantes que hay que entender Presentation Transcript

    • ANDROID DEL 1 AL 10Yésica Hernández Hernández @yezika_ink
    • Temario1 Antecedentes2 Java SE3 Android OS e instalación4 Arquitectura MVC5 Arquitectura de un programa6 Interfaces de Usuario: Vistas e7 Intenciones8 Uso de Bases de Datos y Sistema de Archivos9 Multimedia y Acceso a hw10 CNDH: Una app en 15 minutos
    • Introducción AntecedentesUff ! } Evolución de los celulares
    • Introducción AntecedentesWow } 1997: Philips,"The Synergy" } acceso wireless a e-mail, internet y faxes.
    • Introducción Antecedentes yupi
    • Introducción: JAVANace en 1995 con el proposito de proveer televisióndigital interactiva.Implementa una MV que recibe codigo tipo BytecodeWORA (Write once, run anywhere)Controlado por el Java Comunnity Process Principios: Simple, orientado a objetos y familiar* Robusto y seguro Neutral respecto a la arquitectura y portable. Interpretado, dinamico y multihilo. http://download.oracle.com/javase/ tutorial/
    • Introducción: JAVA Plataforma JAVA JVM: Maquina virtual de java API SDK Interface de Programación de Aplicaciones (API) Herramientas comunes: Debug Compilador<3 IDE Código de muestra Generador de documentación Documentación JRE Herramientas de despliegue Librerias JVM
    • Introducción: JAVA
    • Introducción: AndroidSe anuncio en el 2007 (Open Handset Alliance)HTC, LG Motorola, SamsungChina Mobile Communications, KDDI, DoCoMo, Sprint/Nextel, T-Mobile, Telecom Italia, TelefonicaAudience, Broadcom, Intel, Marvell, NVidia Qualcomm, SiRF,SynapticseBay, esmertec, Google, LivingImage, LiveWire, Nuance, PacketVideo, SkyPop, SONiVOX), Aplix, Noser, TAT, Wind River Objetivo: Proveer una plataforma para las aplicaciones de dispositivos móviles a nivel mundial.
    • Introducción: AndroidProblemas que propusoresolver:FragmentaciónPilas de softwarepropietarioRedes cerradas El entorno de ejecución de Android: Recursos limitados Mezclas de elementos (reutilizacion de componentes) Aplicaciones intercambiables
    • Introducción: Android Capacidades Soporte de Hardware Disposición visual del adicional: GPS, dispositivo acelerometro, Almacenamiento termometro, Conectividad proximidad, Llamadas de voz y video temperatura, etc Envio de mensajes Bluetoothwow Multilenguaje Navegador web Reconocimiento de voz Multihilo Soporte de Java Thetering Formatos multimedia Capacidades de transmisión
    • Introducción: AndroidCapacidades Soporte de HardwareDisposición visual del adicional: GPS, dispositivo acelerometro,Almacenamiento termometro,Conectividad proximidad,Llamadas de voz y video temperatura, etcEnvio de mensajes BluetoothMultilenguaje Reconocimiento de vozNavegador web MultihiloSoporte de Java TheteringFormatos multimediaCapacidades de transmisión
    • Introducción: Android!!!
    • Introducción: Android http://venturebeat.com/2011/07/25/att-gingerbread/
    • ¿Por dónde empiezo? Yaquiero desarrollar una app! Primero hay que instalar todo lo necesario, ¿Ya lo tienen?
    • Instalación Requisitos minimos Sistema operativos: Windows Linux Mac Hardware: Mínimo crítico 1 Gb en RAM* Deseable mas de 2 Gb Software: Java SDK instalado y configurado Driver USB para un dispositivo físico*!!! Descargar: Android SDK Eclipse IDE / Netbeans Driver USB* Plugin(s) de desarrollo
    • InstalaciónContenido del SDKDocsCopia de la documentación mas recientePlatformsLibrerias, imagenes de sistema, codigo de muestra,skins y adb.Platform-toolsHerramientas de desarrollo y depuración quedependen de la plataforma y se actualizan cuando selibera una nueva.ToolsHerramientas de desarrollo y depuración, seactualizan periodicamente.
    • InstalaciónConfiguración de EclipseHelp > Install New SoftwareAgregar url: https://dl-ssl.google.com/android/eclipse/
    • InstalaciónConfiguración de EclipseWindow > Preferences
    • Introducción: Android ADB (Linea de comandos) u Cliente y servidor en la maquina de desarrollo u Servicio (deamon) en el dispositivo u Establecer conexion con los dispositivos u Ejecutar comandos u Instalar aplicaciones<3 u Obtener el log del sistema u Acceder a bases de datos SQLite en el dispositivo
    • Introducción: Android ANDROID (herramienta por linea de comandos o GUI)
    • Introducción: Android ANDROID (herramienta por linea de comandos o GUI)
    • Introducción: Android ANDROID (herramienta por linea de comandos o GUI) Aqui estamosdescargando el api14 ICS
    • Introducción: Android DDMS (herramienta por linea de comandos o GUI)Oh!
    • Introducción AndroidCreando un dispositivo virtualEn la herramienta android se pueden creartanto dispositivos virtuales se deseenPor linea de comandos: ./RUTA_SDK_ANDROID/tools/androidPor medio del IDE
    • Introducción: Android MAS INFORMACIONhttp://developer.android.com/ guide/developing/tools/index.html Yes!
    • Programando en Android¿Qué debo hacer primero?u Entender los tipos de aplicacionesu Entender el ciclo de vidau Entender los elementos visualesu Entender la interacción con la interfáz
    • Programando en Android El modelo MVC en Android La parte visual que permite al Código que usuario recibe y interactuar procesa los eventos de la vista Define elcomportamiento u objetivo del programa
    • Programando en Android Tipos de aplicación Aplicaciones en primer plano Tienen funcionalidad solo cuando estan en primer plano. Ejemplo: juegos y aplicaciones con mapas Aplicaciones en segundo plano Despues de ser configuradas pasan la mayor parte del tiempo ejecutandose en segundio plano, normalmente responden a eventos causados por el HW, sistema u otras aplicaciones por ejemplo la interfaz de las llamadas entrantes o salientes y el gestor de redOh! Aplicaciones intermitentes Necesitan algunas interacciones con el usuario, pero generalmente resuelven todas sus actividades por si mismas, por ejemplo: el reproductor multimedia Widgets Se ejecutan desde la pantalla de Home del usuario.
    • Programando en Android Componentes de una aplicación El usuario Actividades puede interactuar a Consiste en una pantalla con una sola interfaz de usuario,travez de ellas una aplicación se compone de un conjunto de actividades. Se compone por la definición de un esqueleto xml de la interfáz o varios y una clase controladora que hace uso de dichos elementos. Servicios Se ejecuta en segundo plano y provee funcionalidad a otras aplicaciones. Por ejemplo el reproductor de música que corre en segundo plano mientras hacemos otras tareas Tienen un ciclo de vida diferente a las actividades
    • Programando en Android Componentes de una aplicaciónPor ejemplo, existe un Proveedores de contenido proveedor para los Permiten compartir datos con otras actividades y servicios.contactos del Usan una interfáz estándar en forma de URI. teléfono Cuando una aplicación es registrada en el sistema como proveedor de contenido, puede ser capaz de responder a estas peticiones Notificaciones Permiten desplegar de forma visual y/o auditiva mensajes para capturar la atención del usuario. Se pueden personalizar visualmente u obtener datos a través de ellas
    • Programando en Android El ciclo de vida de una ActividadPara cada Actividad se debensobrecargar los metodos: onCreate onStart onResume onPause onStop onDestroy
    • Programando en Android Ciclo de vida onCreate es llamada cuando la aplicacion se crea por primera vez. Crear e inicar elementos de las vistas, bd Objeter mensajes de otras actividades (mediante un Bundle) onStart es llamada cuando la actividad se muestra en pantalla, onResumeMe! se ejecuta despues de onStart si la actividad corre en segundo plano de la vista, puede manejar los eventos derivados de la vista. Si otra aplicacion pide el foco en pantalla y luego al finalizar devuelve la vista a nuestra aplicacion, se ejecuta para poder actualizar datos en la vista.
    • Programando en Android Ciclo de vida onPause Cuando se hace la transición a otra actividad, aqui se puede definir que partes del programa no se deben seguir ejecutando para ahorrar recursos. En este estado, si el dispositivo de queda sin memoria, considerara terminar la aplicación. onStop se ejecuta cuando la actividad no esta visible ya sea porqueMe! otra actividad solicitó el foco o porque la activida será destruida onDestroy es el último método de la aplicación que se ejecutará antes de que el proceso sea destruido
    • Programando en Android Errores en tiempo de ejecuciónADB juega un papelfundamentalpara hallar el error
    • Programando en Android AndroidManifest.xml Proposito Este archivo define la estructura y los metadatos de la aplicacion, sus componentes y requerimientos. Define cada componente de la aplicacion en un nodo y para cada uno define filtros de intentos y permisos que controlan la interaccion entre ellos. Define configuraciones de seguridad, requerimientos de hardware y de plataforma.Oh! Algunos elementos: reqFiveWayNav - especifica que el dispositivo debe tener un trackball o un D-pad reqHardKeyboard - especifica que se necesita un teclado fisico
    • Programando en Android AndroidManifest.xml Algunos elementos: uses-feature android.hardware.camera si se requiere la camara del dispositivo suports-screns smallScreens - QVGA normalScreen - WVGA anyDensity - si la aplicacion se acomodaa cualquier densidad applicationOh! activity provider receiver uses-permision - habilita el uso de recursos permision - establece restricciones al acceder a la aplicacion instrumentation - declara clases de prueba de la aplicacion .
    • Programando en Android Configuración de AndroidManifest.xml Configuraciones que ya tenemos Declaración de las actividades que forman la aplicación Lo que vamos a agregar Indicar qué actividad es la inicial <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
    • Programando en Android Configuración de AndroidManifest.xml <activity android:label="@string/app_name" android:name="ControladorLogo"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="ControladorJuego" />
    • Programando en Android Configuración de AndroidManifest.xml<uses-sdk android:minSdkVersion="8" /><uses-permissionandroid:name="android.permission.VIBRATE" />Por ejemplo aquí estamos otorgando a la aplicación permiso paraque pueda generar vibraciones a través del hardware del teléfono Wow
    • Programando en Android Comunicación e Intenciones (intents) Las actividades, servicios y los receptores de mensajes de difusión Reutilizar se comunican y son invocados mediante mensajes asíncronosfunciones de llamados Intents, otras apps Permiten invocar actividades de otras aplicaciones Permiten enviar datos mediante un objeto de tipo Bundle que puede contener objetos serializables Compartimos Los elementos accesibles se pueden referenciar por su nombre de información clase + paquete o bien por una URI entre Actividades Nombre clase o destino Activity Datos
    • Programando en AndroidElementos visuales Un mundo de posibilidades para combinar y crearMe!
    • Programando en Android Elementos visualesElemento miElementoX = (Elemento)findViewById(R.id.X); Todos heredan propiedades de View
    • Programando en Android Elementos visuales Estructura xml <LinearLayout xmlns:android="http:// que define id schemas.android.com/apk/res/android" android:id="@+id/root" android:orientation="vertical" Referencia en android:background="@drawable/lt_gray" el código del id android:layout_width="fill_parent" android:layout_height="wrap_content"> ... otros elementos....package curso.ejemplo.ids; </LinearLayout>import android.app.Activity;import android.os.Bundle;public class AndroidDemo extends Activity { private LinearLayout root; @Override public void onCreate(Bundle state) { super.onCreate(state); setContentView(R.layout.main); root = (LinearLayout) findViewById(R.id.root); }}
    • Programando en Android Jugando con eventos Acciones guiadas por el usuario Toca DeslizaPresiona
    • Programando en Android Jugando con eventos Button.OnClickListener listener = new Button.OnClickListener() { @Override public void onClick(View arg0) { .........................acciones............................^^ } }; ((Button) findViewById(R.id.button1)).setOnClickListener (listener);
    • Programando en Android Menús Se lanza alpresionar un elemento particular Se obtiene con la tecla Menu
    • Programando en Android Alertas y diálogos Se puede obtener información de ellos Mensajeinformativo, 1 a la vez y desaparece solo
    • Programando en Android AlmacenamientoA B C D E
    • Programando en Android Acceso a hardwareSe necesita establecer permisos en el Android Manifest paraacceder a la mayoría de los recursosEl API cuenta con clases especializadas para manejar de formasencilla el harware disponible: GPS, Acelerómetro, Vibrador,Sonido, Cámara, Micrófono, Bluetooth Intents
    • Programando en Android private void recordVideo(Uri outputpath) { Intent intent = new Intent (MediaStore.ACTION_VIDEO_CAPTURE);Acceso a hardware If (outputpath != null) intent.putExtra(MediaStore.EXTRA_OUTPUT, output); intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, HIGH_VIDEO_QUALITY); startActivityForResult(intent, RECORD_VIDEO); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == RECORD_VIDEO) { Uri recordedVideo = data.getData(); //…. Otras acciones }}
    • Programando en Android En el Android Manifest <uses-permission android:name="android.permission.CAMERA"/>Acceso a hardware En el código Camera camera = Camera.open(); Camera.Parameters parameters = camera.getParameters(); List<String> colorEffects = parameters.getSupportedColorEffects(); if (colorEffects.contains(Camera.Parameters.EFFECT_SEPIA)) parameters.setColorEffect(Camera.Parameters.EFFECT_SEPIA); camera.setParameters(parameters); camera.release();
    • Reproducir un video Menu usando Usar layouts contenidocompuestas basado en web Una aplicación en 15 minutos Una app para la CNDH
    • Programando en Android Refinando la aplicación Antes deteclear sin control… Recomendaciones para programar en Android * No hacer suposiciones sobre el tamaño de la pantalla o la resolución * Nunca codificar los valores de cadena en el código * Utilizar diseños relativos y píxeles independientes del dispositivo * Optimizar los activos para diferentes resoluciones de pantalla * Determinar qué APIs están disponibles * Guarde los valores como los recursos (colores,dimensiones, matrices, imágenes, diseños)
    • Programando en Android Creando un proyecto usando EclipseEl plugin que se instaló en eclipse permitecrear automáticamente proyectos con laestructura adecuada, acceder a lasdispositivos virtuales y capacidades dedepuración File>New>AndroidProject
    • Programando en Android Referencia de todosEstructura de un proyecto los objetos Clases Objetos del API Textos, menús Recursos colores, formas, estilos visuales Esqueleto de las vistas Config. de la app
    • Programando en AndroidArquitectura de la applicación CNDHHappycoding