¿Quiénes somos?Somos el laboratorio de la Facultad de  Ingeniería de la UNAM en donde se  realizan proyectos de desarrollo...
deletreadoYésica Hernández Hernández        @yezika_ink
ALCANCENECESIDADESDESARROLLORIQUEZAOPERACIÓNINTEGRACIÓNDIVERSIDAD
ALCANCEEl contexto tecnológico        Historia     Características
El contexto tecnológicoDistintas plataformas móviles en el mercado
El contexto tecnológico   Portable a distintos contextos
El contexto tecnológico     Tiendas de aplicaciones
Historia                     Octubre 2003Android Inc: Andy Rubin and Rich Miner,              Nick Sears and Chris White  ...
CaracterísticasAdaptabilidad al HWAlmacenamiento (+SQLite)Conectividad (GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,Bluetooth, Wi...
CaracterísticasNavegador web (WebKit,JavaScript V8de Google Chrome)Soporte de Java (App)Soporte multimediaEntorno de d...
NECESIDADES      La plataforma Requisitos de instalación Consejos para programar
La plataforma¿Qué necesito para comenzar a desarrollaraplicaciones y componentes para Android?        • Configurar el ento...
La plataforma  ¿Qué necesito para comenzar a desarrollar  aplicaciones y componentes para Android?                     Her...
La plataforma¿Qué necesito para comenzar a desarrollaraplicaciones y componentes para Android?Ejemplos        Herramientas...
Requisitos de instalaciónSistema Operativo•Windows XP (32-bit), Vista (32- or 64-bit), oWindows 7 (32- or 64-bit)•Mac OS X...
Consejos para el           programador1. Planificar todas las vistas de la aplicación   para:   1. Considerar que hay much...
DESARROLLO   Arquitectura del OS           MVCEstructura de un proyecto
Arquitectura de OS       AplicacionesFramework de aplicaciones                      Runtime deBibliotecas                 ...
Arquitectura de OSPersonalización de Android por cada fabricante ousuario agregando componentes/apps que le dan:Identidad...
Modelo-Vista-Controlador                   Interfáz de usuarioManejo de eventos enviados desde la IU                 Actua...
Modelo-Vista-Controlador
Estructura de un proyecto
Creando un proyecto1.   Usando el SDK2.   EclipseIDE + plugins3.   Netbeans + plugin + Droid Draw4.   AppInventor5.   …
Creando un proyecto1. Ejecutamos Eclipse2. Menu Archivo > Nuevo > Proyecto Android
RIQUEZAPermisos y encapsulamiento     Almacenamiento        Hardware
Permisos y encapsulamiento1.   Para acceder a recursos fisicos necesitan declarar     permisos de uso.2.   También necesit...
Permisos y encapsulamientoEjemplos de permisos:    android.permission.READ_OWNER_DATA    android.permission.SET_WALLPAPER ...
Almacenamiento1.   En la RAM (tiempo de ejecución)2.   En la tarjeta SDCARD3.   En una base de datos SQLITE4.   Enviar a u...
Hardware1.   Algunos componentes de hardware se pueden usar a     través de otra aplicación o componente del sistema, lo  ...
HardwareUsando otros componentes de sistema para usar el HWIntent intent = new    Intent(MediaStore.ACTION_IMAGE_CAPTURE)f...
OperaciónExperiencia de usuario       Errores      Debugging
Experiencia de usuario                    Barra de estado                   Widgets                  Pantalla de inicio “H...
Experiencia de usuario           Barra de Notificaciones           (Deslizar hacia abajo barra de           estado)       ...
ErroresTodas las aplicaciones se ejecutan sobre una máquinavirtual llamada Dalvik, cuando ocurre un error, el sistemaopera...
Integración   Interfaces de usuario Comunicación entre apps
Interfaz de usuario     Actualiza/Carga/ Escucha                                 Vista                                   O...
Interfaz de usuarioHay dos formas de asociar eventos de interfáz al controlador:1. Por código asociando un objeto de tipo ...
Interfaz de usuarioHaciendo que el Activity sea un “listener”                             onClick()                       ...
Interfaz de usuario Con las propiedades definidas en el Layout: 1. Se debe indicar el nombre del metodo contenido en el   ...
Interfaz de usuario                    Tablas                               Ordenar y agrupar         Layout   Relativos  ...
Interfaz de usuario            <Button android:id=“BotonX"            android:layout_width="fill_parent"            androi...
Interfaz de usuario
Interfaz de usuario            Vista “Outline”
Comunicación entre apps¿Cómo funciona?                               APP1                  Activity   Activity          Ac...
Diversidad Sabores de Android  Recomendaciones
Sabores de AndroidCada nueva versión ofrece nuevos componentes ynuevas experiencias de usuarioTambién demandan más recur...
Sabores de Android      Tablet   Híbrido
RecomendacionesBuscar un buen libro de AndroidLeer con calma la información de la página oficialhttp://developer.android...
Gracias
Upcoming SlideShare
Loading in …5
×

Deletreando Android

2,190 views

Published on

Diapositivas de mi curso introductorio de Android en 5 horas.

EN EL CONGRESO UNIVERSITARIO MOVIL 2012 SE USÓ ESTA PRESENTACIÓN PARA HABLAR DE ANDROID Y SE HIZO UNA APP PARLANCHINA COMO EJEMPLO DEL CONTENIDO, AQUI ESTÁ EL CODIGO FUENTE https://www.dropbox.com/s/1dbso3rb47be1hj/Hablar.zip?%20m

Published in: Education
5 Comments
4 Likes
Statistics
Notes
  • @undefined Hola disculpa, ando un poco atareada, trataré de republicar el enlace en breve.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hola amigo me gustaría que me pasaras el código fuente que mencionas ya que no lo pude descargar del link que dejaste. Muchas gracias por tu ayuda ya que lo necesito para un trabajo universitario, mi correo es ramagima@ymail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • EN EL CONGRESO UNIVERSITARIO MOVIL 2012 SE USÓ ESTA PRESENTACIÓN PARA HABLAR DE ANDROID Y SE HIZO UNA APP PARLANCHINA COMO EJEMPLO DEL CONTENIDO, AQUI ESTÁ EL CODIGO FUENTE https://www.dropbox.com/s/1dbso3rb47be1hj/Hablar.zip?%20m
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • @lucianohe3 Hola, cambie de PC y no he copiado todos mis archivos, en cuanto las tenga a las mano te mando el PDF, saludos!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hola, me gustaria saber si me podrian mandar esta presentacion a mi correo, ya que me gusto mucho y me gustaria poder tenerla en mis mobiles, para cuando no tenga conexion poder leerla grax. lprcdw2@gmail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
2,190
On SlideShare
0
From Embeds
0
Number of Embeds
273
Actions
Shares
0
Downloads
0
Comments
5
Likes
4
Embeds 0
No embeds

No notes for slide

Deletreando Android

  1. 1. ¿Quiénes somos?Somos el laboratorio de la Facultad de Ingeniería de la UNAM en donde se realizan proyectos de desarrollo de aplicaciones multiplataforma para dispositivos móviles que brinden servicios usando las tecnologías más recientes a los usuarios. @unam_mobile fb/ UNAM.Mobile
  2. 2. deletreadoYésica Hernández Hernández @yezika_ink
  3. 3. ALCANCENECESIDADESDESARROLLORIQUEZAOPERACIÓNINTEGRACIÓNDIVERSIDAD
  4. 4. ALCANCEEl contexto tecnológico Historia Características
  5. 5. El contexto tecnológicoDistintas plataformas móviles en el mercado
  6. 6. El contexto tecnológico Portable a distintos contextos
  7. 7. El contexto tecnológico Tiendas de aplicaciones
  8. 8. Historia Octubre 2003Android Inc: Andy Rubin and Rich Miner, Nick Sears and Chris White Agosto 2005 Android adquiere la compañia. ( aprox 50 millones de dólares) 1 Noviembre 2007 Primer SDK
  9. 9. CaracterísticasAdaptabilidad al HWAlmacenamiento (+SQLite)Conectividad (GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,Bluetooth, Wi-Fi, LTE y WiMAX)MensajeríaSoporte para hardware adicional (cámaras de fotos, devídeo, pantallas táctiles, GPS, acelerómetros, giroscopios,magnetómetros, sensores de proximidad y de presión,termómetro, aceleración 2D y 3D)
  10. 10. CaracterísticasNavegador web (WebKit,JavaScript V8de Google Chrome)Soporte de Java (App)Soporte multimediaEntorno de desarrolloGoogle Play (Tienda de apps)Multi-táctilBluetoothVideollamada (Google Talk)MultitareaTethering
  11. 11. NECESIDADES La plataforma Requisitos de instalación Consejos para programar
  12. 12. La plataforma¿Qué necesito para comenzar a desarrollaraplicaciones y componentes para Android? • Configurar el entorno de desarrollo 1 • Configurar AVD’s o dispositivos • Desarrollar tu app 2 • Compilar y probar tu app • Depurar tu app 3 • Probar tu app • Preparar tu app para publicarla 4 • Publicar tu app
  13. 13. La plataforma ¿Qué necesito para comenzar a desarrollar aplicaciones y componentes para Android? HerramientasDocumentación Plataformas plataforma Herramientas Desarrollo para Doc’s de clases dependientes las plataformas de la plataforma descargadas ADB
  14. 14. La plataforma¿Qué necesito para comenzar a desarrollaraplicaciones y componentes para Android?Ejemplos Herramientas AddOns Herramientas Código de Administración de fabricantes muestra SDK y terceros Administración AVD’s Herramienta
  15. 15. Requisitos de instalaciónSistema Operativo•Windows XP (32-bit), Vista (32- or 64-bit), oWindows 7 (32- or 64-bit)•Mac OS X 10.5.8 o later (x86 only)•Linux con GNU C Library (glibc) 2.7 o superiorOtros requisitos•Oracle Java JDK•Android SDKHardware•Mínimo 2GB RAM y•Más de 5GB libres en DD
  16. 16. Consejos para el programador1. Planificar todas las vistas de la aplicación para: 1. Considerar que hay muchas resoluciones de pantalla 2. El grupo de dispositivos (capacidades) a los que va dirigida2. Planificar los casos de uso de la aplicación para: 1. Lograr la compatibilidad con la plataforma 2. Diseñar una buena arquitectura basada en los componentes que ofrece Android
  17. 17. DESARROLLO Arquitectura del OS MVCEstructura de un proyecto
  18. 18. Arquitectura de OS AplicacionesFramework de aplicaciones Runtime deBibliotecas Android Núcleo Linux
  19. 19. Arquitectura de OSPersonalización de Android por cada fabricante ousuario agregando componentes/apps que le dan:IdentidadFuncionalidadServicios especiales
  20. 20. Modelo-Vista-Controlador Interfáz de usuarioManejo de eventos enviados desde la IU Actualización de la IU Uso del modelo para toma de desiciones Descripción del comportamiento Descripción de los datos
  21. 21. Modelo-Vista-Controlador
  22. 22. Estructura de un proyecto
  23. 23. Creando un proyecto1. Usando el SDK2. EclipseIDE + plugins3. Netbeans + plugin + Droid Draw4. AppInventor5. …
  24. 24. Creando un proyecto1. Ejecutamos Eclipse2. Menu Archivo > Nuevo > Proyecto Android
  25. 25. RIQUEZAPermisos y encapsulamiento Almacenamiento Hardware
  26. 26. Permisos y encapsulamiento1. Para acceder a recursos fisicos necesitan declarar permisos de uso.2. También necesitan declarar permisos para el uso de servicios, como internet, mensajes c2dm, comunicación con el sistema, acceder datos en el sistema, etc…3. Cada aplicación y componente tiene un nombre unico que permite el uso de estos permisos y acciones de interacción a través de mensajesEstos permisos estan indicados en un archivo llamado AndroidManifest.xml
  27. 27. Permisos y encapsulamientoEjemplos de permisos: android.permission.READ_OWNER_DATA android.permission.SET_WALLPAPER android.permission.DEVICE_POWER <uses-permission android:name = “android.permission.VIBRATE”></uses-permission>Declarando un componente y a que solicitud responde<activity android:name = “.UnActivity”android:label = “@string/app_name”> <intent-filter> <action android:name = “android.intent.action.MAIN” /> <category android:name = “android.intent.category.LAUNCHER” /> </intent-filter></activity>
  28. 28. Almacenamiento1. En la RAM (tiempo de ejecución)2. En la tarjeta SDCARD3. En una base de datos SQLITE4. Enviar a un servidor a través de una conexión de red Velocidad de • RAM acceso • WEB Seguridad y • SQLITE y RAM control de lectura • WEB • SDCARD Mayor Capacidad • RAM • Todas excepto RAM Persistencia
  29. 29. Hardware1. Algunos componentes de hardware se pueden usar a través de otra aplicación o componente del sistema, lo que se necesita es enviarle un mensaje para “iniciarla”, más adelante veremos estos mensajes2. El framework de aplicaciones provee clases que encapsulan al hardware3. Se pueden desarrollar componentes en C++ para optimizar el uso de HW (ejemplo Procesadores gráficos)
  30. 30. HardwareUsando otros componentes de sistema para usar el HWIntent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE)fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);startActivityForResult(intent, ID_ACCION);Usando la clase Camera (Se necesita declarar permisos)mCamera = getCameraInstance();Camera c = null; try { c = mCamera.open(); c.takePicture(null, null, ARCHIVO_DESTINO); } catch (Exception e){ … }
  31. 31. OperaciónExperiencia de usuario Errores Debugging
  32. 32. Experiencia de usuario Barra de estado Widgets Pantalla de inicio “Home” Iconos de acceso directo Botones de navegación (físicos o virtuales)Lista de apps
  33. 33. Experiencia de usuario Barra de Notificaciones (Deslizar hacia abajo barra de estado) Notificaciones de todas las aplicaciones o sucesos en el sistema (Programables y configurables)
  34. 34. ErroresTodas las aplicaciones se ejecutan sobre una máquinavirtual llamada Dalvik, cuando ocurre un error, el sistemaoperativo es capaz de detectarlo y finalizar la aplicación:•Errores en tiempo de ejecución•Aplicaciones que ya no responden
  35. 35. Integración Interfaces de usuario Comunicación entre apps
  36. 36. Interfaz de usuario Actualiza/Carga/ Escucha Vista OBJ Activity Evento Método Android Manifest Declarada en
  37. 37. Interfaz de usuarioHay dos formas de asociar eventos de interfáz al controlador:1. Por código asociando un objeto de tipo “listener”2. Haciendo que el Activity sea un “listener”3. Con las propiedades definidas en el Layout private OnClickListener mListener = new OnClickListener() { public void onClick(View v) { … } }; protected void onCreate(Bundle savedValues) { ... button.setOnClickListener(mListener); }
  38. 38. Interfaz de usuarioHaciendo que el Activity sea un “listener” onClick() onLongClick() Metodos a onFocusChange() implementar onKey() onTouch() onCreateContextMenu()public class ExampleActivity extends Activity implementsOnClickListener { protected void onCreate(Bundle savedValues) { ... button.setOnClickListener(this); } public void onClick(View v) { …. }}
  39. 39. Interfaz de usuario Con las propiedades definidas en el Layout: 1. Se debe indicar el nombre del metodo contenido en el Activity que usará el layout 2. El metodo debe ser publico y recibir un objeto de tipo view <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tap Me" android:onClick=“buttonClicked" />public class ExampleActivity extends Activity {… public void buttonClicked(View v) { … }}
  40. 40. Interfaz de usuario Tablas Ordenar y agrupar Layout Relativos elementos visuales, son anidables Lineales General Elementos visuales Menu que responden aView Contextual eventos de interacción Texto Botón Elementos visuales Widget que componen las Checkbox vistas Barras de progreso
  41. 41. Interfaz de usuario <Button android:id=“BotonX" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Button 3" /> R.id.BotonXButton b = (Button)findViewById(R.id.BotonX)
  42. 42. Interfaz de usuario
  43. 43. Interfaz de usuario Vista “Outline”
  44. 44. Comunicación entre apps¿Cómo funciona? APP1 Activity Activity Activity 1 2 3 OS APP2
  45. 45. Diversidad Sabores de Android Recomendaciones
  46. 46. Sabores de AndroidCada nueva versión ofrece nuevos componentes ynuevas experiencias de usuarioTambién demandan más recursos de HWSon acumulativas (Las apps de viejas versiones corrensobre las versiones más recientes)
  47. 47. Sabores de Android Tablet Híbrido
  48. 48. RecomendacionesBuscar un buen libro de AndroidLeer con calma la información de la página oficialhttp://developer.android.com/guide/index.htmlTener buenas bases de Javahttp://docs.oracle.com/javase/tutorial/java/index.htmlHacerse amigo de un diseñador gráficohttp://developer.android.com/design/index.htmlLeer las recomendaciones de rendimiento, diseño ycompatibilidad
  49. 49. Gracias

×