Aplicación Android Find Your Facebook Friends

Slides:



Advertisements
Presentaciones similares
Hardware y Software de servidor
Advertisements

RSS Y LECTORES.
Gestión de Recursos Informáticos Unidad Nº 3: Alfresco.
Demostraciones Worklight
Lista de la compra PARA ANDROID
Aplicaciones Cliente-Servidor
Sistema desarrollado Control de la Producción
Software alternativo a MS Office Nicolás Sánchez López Ulises Gálvez Romero.
Instituto Tecnológico Superior de Calkiní Ingeniería en Sistemas Computacionales TÓPICOS DE PROGRAMACIÓN MÓVIL David Enrique Ochoa Díaz Licenciatura en.
Buscar bibliografía en
Características generales de un servicio Web.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
FOTOS. Nos enseña a tomar fotografías y a crear una galería con ellos en donde aprendamos sobre el contenido de un curso. También aprender a realizar.
Windows es un sistema operativo
REDES SOCIALES PARA ASOCIACIONES
¿Cómo me puedo registrar en Facebook? Si no tienes una cuenta de Facebook, puedes registrarte para obtener una en unos pocos pasos: 1.Ve a
Integrantes: Quintero Samuel Tovar Félix. Puntos a tratar: ¿Qué es Waze? Origen Objetivos Características Beneficios Usabilidad Accesibilidad Sociabilidad.
Observatorio tecnológico Novedades para dispositivos móviles: API’s adicionales para dispositivos BlackBerry La solución 3g para iPhone de Apple: el chip.
Visualizador de imágenes remotas Alumno: Juan Pablo García Ortíz Director: Vicente Gonzalez Ruiz.
TRINO ANDRADE G UNIVERSIDAD ECOTEC. PRESENTACIÓN DE OUTLOOK EXPRESS Microsoft Outlook Express es una herramienta necesaria que le permite administrar.
Servicios Web. Servicios web Son programas con funcionalidad accesible a través de protocolo http que permiten la ejecución remota de métodos y funciones.
Manuel E. Manrique Oporto Ytalo E. Borja Mori
1 ONLINE SHOP ‘09 Ainara Ortega Silvia Urdiain Carmen Moriones.
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
Por Dra. Anabel Clavijo Castro
Oscar higón galán Daniel Jiménez merino enrique gilsanz pineda
Introducción a los Sistemas Operativos
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
historia La cuna de lo que hoy conocemos como un Android adolescente, al que aún le queda por madurar mucho, pero del que ya vemos y disfrutamos sus mejores.
Google Docs y Talk. Vamos a hacer una pequeña presentación de google docs y google talk en la que hablaremos de: Historia Historia Ventajas y desventajas.
Por Pablo Marcos Jiménez Por Pablo Marcos Jiménez.
Carlos Fernández Durán Manuel Molina Menéndez Tutor: Miguel Gea Megías.
Carlos Fernández Durán Manuel Molina Menéndez Tutor: Miguel Gea Megías.
Redes de Transmisión de Datos
Al igual que un equipo no puede trabajar sin un sistema operativo, una red de equipos no puede funcionar sin un sistema operativo de red. Si no se dispone.
CRISTIAN MATEO NOREÑA MELIZA OSPINA MORENO 11 C TECNOLOGIA INFORMATICA LA SALLE DE CAMPOAMOR 2013.
El entorno de código abierto Arduino hace fácil escribir código y cargarlo a la placa E/S. Funciona en Windows, Mac OSX y Linux. El entorno está escrito.
INFORMÁTICA Y CONVERGENCIA TECNOLÓGICA
DESARROLLO DE APPS MÓVILES - Introducción COMPUTER DATA SYSTEMS.
Hecho por: Darlin Grupo: 4C
Son elementos con algún tipo de funcionalidad con capacidad de procesamiento con conexión a algún tipo de red cumpliendo indefinidas ordenes que pueden.
DISPOSITIVOS MOVILES.
¿QUE SON LAS ACTUALIZACIONES?  Las actualizaciones son adiciones al software que pueden evitar problemas o corregirlos, mejorar el funcionamiento del.
File Transfer Protocol.
Desarrollo DE apps móviles
Johan Mejia Software de sistemas para computadoras.
Crear un blog Sé Blogger…. Crear un blog Para crear un blog con Blogger, visita la página principal de Blogger, introduce tu nombre de usuario y contraseña.
1.- ¿Qué es Outlook? 1.- ¿Qué es Outlook? 2.-Características principales de Outlook 2.-Características principales de Outlook 3.-Descripción de la pantalla.
Antonio López Gracia Fernando Noain Fernandez Ricardo Meana de la Llave
Tecnologías Cliente / Servidor
María Camila Restrepo C. Mantener la Operatividad del sistema
LA NUEVA GESTIÓN DEL TALENTO ALEJANDRO SOLER CHAUZA TAG Distancia 5ª INFORMÁTICA V 1.
Desarrollo DE apps móviles
Introducción a GDevelop
APLICACIONES DEL COMPUTADOR Y EL CELULAR
TECNICO EN SISTEMAS NUMERO DE FICHA:
Proceso de resolución de un nombre de dominio. –Consultas recursivas. –Consultas iterativas. –Caché y TTL. –Recursividad y caché. Gustavo Antequera Rodríguez.
Movilidad y Aparcamientos: Hacia un Futuro Móvil e Inalámbrico TELVENT Junio 2008.
ANTIVIRUS CLOUD COMPUTING. Los antivirus cloud o antivirus en la nube, son antivirus que aplican a los antivirus el concepto cloud computing. Instalan.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Instituto de Ciencias y Humanidades Tabasco. El software Coordinar el uso del hardware Coordinar el uso del hardware Ejercer el control Programas de aplicación.
SISTEMA DE GESTIÓN DE OVITRAMPAS Oficina General de Estadística e Informática Ministerio de Salud ZikApp.
CAPITULO III El Sistema Operativo (OS)
Conociendo el modelo Cliente-Servidor
Softlogia S.R.L. Formación de Recursos Humanos Java Server Faces Instructor: Martin R. Baspineiro.
Andrea Fernanda Salazar Rueda María Paula Peña Fernández Yuleny Osorio López.
COMUNICACIÓN Y TICS KÁROL FERNANDA BARRAGÁN M. JENNYLITH DAYANA ARDILA P. WENDY PAOLA PINTO F.
DOCENTE: CLAUDIA ESTHER DOMÍNGUEZ BRIGIDO CBTIS 242 CUETZALAN DEL PROGRESO, PUE.
EY Strategic Growth Forum® México Iconos de la aplicación Asistentes: Muestra los nombres de todas las personas participantes en el foro. Reuniones:
Transcripción de la presentación:

Aplicación Android Find Your Facebook Friends Presentación Redes Aplicación Android Find Your Facebook Friends Autor: Darío Ortuño Esplugues

Contenido Introducción Sistema Operativo Móvil Tecnologías existentes Desarrollo de la aplicación Resultados Conclusiones Trabajo futuro

Introducción (I) Cada vez las redes sociales son más usadas por todo tipo de personas y el uso de Smartphones hace posible acceder a estas desde cualquier lugar Los servicios GPS añadidos al potencial de los servicios basados en localización, nos proporcionan un gran abanico de posibilidades

Introducción (II) Caracteristicas de la aplicación: Localiza tus amigos de Facebook en un mapa de Google Maps Muestra si los usuarios de Facebook están online Actualiza las localizaciones periodicamente Informacion publicada en la localización

Sistema Operativo Móvil(I) Symbian OS, BlackBerry, iOS, Android y Windows Phone Android es el segundo SO móvil más usado en el tercer trimestre de 2010

Sistema Operativo Móvil (II) Android tuvo el mayor crecimiento en el número de usuarios en Q4 2010

Tecnologías Servicios basados en localización(LBS) Android Facebook Google Maps

Servicios basados en localización (I) Proveen un servicio personalizado para usuarios basado en información de ubicaciones geográficas Estos servicios usan: Sistemas de Información Geográfica Tecnología de posicionamiento del cliente, GPS O del servidor, proporcionado por el operador de red Tecnología de redes de comunicación Las típicas aplicaciones LBS applications proporcionan servicios geográficos en tiempo real

Servicios basados en localización (II) Componentes LBS Dispositivos Móviles Red de comunicación Componente de posicionamiento Service and Application Provider Data and Content Provider

Android (I) Completo set de software que contiene un SO, middleware y aplicaciones basdas en Linux kernel, diseñado originalmente para dispostivos móviles Nos permite desarrollar aplicaciones en Java y lanzarlas en la máquina virtual Dalvik compilando en tiempo de ejecución

Android (II) Arquitectura Android (I)

Android (III) Componentes Android Actividades: Proporcionan una pantalla para interactuar con la aplicación, normalmente una aplicación tiene varias actividades siendo una la principal Servicios: No suministra una interfaz sino que realiza operaciones de larga duración en segundo plano. Cualquier componente de la aplicación puede empezar un servicio que seguirá funcionando incluso si los usuarios cambian de aplicación Proveedores de contenido: Gestionan un conjunto compartido de datos de la aplicación, se puede almacenar y recuperar datos y hacerlos accesibles a todas las aplicaciones. Cuando queremos hacer nuestros datos públicos, tenemos dos opciones. Podemos crear nuestro propio contenido o agregar los datos a un proveedor. Receptores Broadcast: Responden a los avisos broadcast del sistema, este tipo de componentes no proporcionan una interfaz de usuario, aunque un receptor puede crear una barra de estado para alertar al usuario cuando un evento broadcast se produce.

Facebook (I) Facebook Platform proporciona un SDKs para iOS y Android, y funciones web para acceder desde un navegador Facebook Graph API Es el nucleo de Facebook Platform llamado social graph. Consiste en una vista de objetos (people, pages, events…) y las relaciones entre ellos(friend relationships, photo tags…)

Facebook (II) Checkins Manera de compartir la localización de un usuario Compuesto por: Coordenadas Fecha de publicación Mensaje Página en la que se hace el checkin

Google Maps (I) Google APIs Add-On (I) Es una extensión del entorno de desarrollo Android SDK que permite implementar aplicaciones para dispositivos que incluye: Set de aplicaciones Google Librerias Servicios

Google Maps(II) Google APIs Add-On (II) Incluye: Librería externa de Mapas, las clases de esta librería permiten descarga, rendering, and cacheode Mapas, asi como una variedad de controles y opciones de visualización. La clase principal es MapView, la cual muestra un mapa con datos obtenidos desde el servicio de Google Maps. USB Open Accessory Library, permite a los usuarios conectar USB host especificamente diseñados para dispositivos Android.

Aplicación (I) Aplicación Android capaz de localizar los amigos de un usuario de Facebook en un mapa de Google La aplicación usará los checkins de los amigos del usuario para “dibujarlos” en el mapa

Aplicación (II) Los checkins están asociados con localizaciones representadas por Facebook Pages, el software obtiene la información necesaria para “pintar” a los usuarios en su última localización conocida: Coordenadas Timestamp Nombre del lugar Mensaje escrito

Aplicación (III) En primer lugar, el usuario debe loguearse en Facebook y aceptar los permisos usados por la aplicación tales como: Información de su checkin Información del checkin de sus amigos Estado online presence de sus amigos Publicar checkins en Facebook.

Aplicación (IV) Muestra el mapa y un mensaje de que el programa está cargando la localización de sus amigos Dibuja dichas localizaciones en el mapa con diferentes estrellas coloreadas Online, estrella roja Offline, estrella gris Idle, estrella azul Localización actual del usuario, círculo azul parpadeante

Aplicación (V) Las localizaciones se actualizan cada cierto tiempo dependiendo del número de amigos o la calidad de la red Para publicar la localización debe haber una pagina de Facebook creada en las coordenas actuales o cerca, porque Facebook no permite crearlas desde el API, solo es posible crearlas desde la web de Facebook

Resultados (I) Diálogo de Facebook para que el usuario pueda loguearse con su cuenta de Facebook

Resultados (II) El principal problema de la aplicación es el tiempo gastado en peticiones El software debe comprobar todos los amigos del usuario y este tiempo puede ser muy diferente dependiendo del número de amigos del usuario Cada vez que el usuario lanza la aplicación debe esperar “demasiado” tiempo hasta que todas las localizaciones son obtenidas

Resultados (III) El tiempo medio con diferente número de amigos del usuario, es medido con el método del sistema System.currentTimeMillis() Nosotros medimos el tiempo desde que la aplicación empieza a solicitar la información para comprobar que amigos del usuario tienen información de checkin y finalizará cuando los haya comprobado todos Esta medida la realizaremos cinco veces para 10, 50, 100 y 200 amigos del usuario y obtendremos la media

Results (IV) Además, el tiempo usado en las peticiones puede cambiar dependiendo del rendimiento del canal La aplicación mide el tiempo de cada carga o actualización Usa este tiempo para esperar a la siguiente actualización asi asegurandose de que la ultima actualización ha finalizado

Results (V) Una vez los requests para obtener las localizaciones de los amigos han terminado se dibujan en el mapa, asi como la posición actual del usuario

Results (VI) Problema publicando la localización actual del usuario En Facebook para publicar una localización es necesario publicar un checkin que esté asociado a una página de Facebook Sino existe una pagina con coordenadas cerca de la localización del usuario, la aplicación no será capaz de publicar el checkin ya que Facebook Platform no permite crear páginas desde el API La aplicación busca una página cerca de las coordenadas del usuario y pública el checin en esa página Sino encuentra una página cerca busca en un radio mayor Si sigue sin encontra una cercana muestra un mensaje indicando que la operación no ha sido posible

Conclusiones La aplicación ha sido desarrollada implementando completamente los requisitos deseados Aplicación para un dispositivo móvil capaz de obtener la localización de los amigos de Facebook del usuario Usa estas localizaciones para dibujarlos en un mapa de Google Nos hemos encontrado con varios problemas a lo largo del desarrollo Bajo rendimiento causado por la cantidad de peticiones necesarias para comprobar que usuarios tienen información de su localización (checkin) Imposibilidad de crear páginas de Facebook haciendo imposible publicar checkins si no existe una cerca de la localización del dispositivo móvil

Trabajo futuro Mejorar el rendimiento Publicación de checkins Dibujando el recorrido

Mejorar el rendimiento (I) Guardar los usuarios con checkins in una archivo fisico para las siguientes ejecuciones de la aplicación. Realizar dos actualizaciones en paralelo Actualizar las localizaciones de los usuarios con checkins guardados Comprobar el resto de usuarios (cada más tiempo)

Publicación de checkins Crear un algoritmo eficiente para obtener las páginas más cercanas Que el usuario pueda elegir donde hacer el checkin, la aplicación elige la más cercana

Dibujar el recorrido Dibujar la ruta que un usuario sigue mientras la aplicación está funcionando La ruta desde la localización actual del usuario hasta cualquiera de sus amigos “pintados” en el mapa

Bibliography Google Inc. Android Developer Guide. Available in Web: <http://developer.android.com/guide/index.html> Google Inc. Android Reference. Available in Web: <http://developer.android.com/reference/packages.html> Google Inc. Android SDK. Available in Web: <http://developer.android.com/sdk/index.html> Facebook. Facebook Developers Documentation. Available in Web: <http://developers.facebook.com/docs/> Facebook. Facebook SDK. Available in Web: <https://github.com/facebook/facebook-android-sdk> Google Inc. Google Maps Reference for Android. Available in Web: <http://code.google.com/intl/es-ES/android/add-ons/google-apis/reference/index.html> Google Inc. Google Maps Dev Guide for Android. Available in Web: <http://code.google.com/android/add-ons/google-apis/maps-overview.html> Steiniger, Stefan, Neun, Moritz, and Edwardes, Alistair. "Foundations of Location Based Services", University of Zurich. Available in Web: <http://mesh.dl.sourceforge.net/project/jump-pilot/w_other_freegis_documents/articles/lbs_lecturenotes_steinigeretal2006.pdf> Schiller, J. H., and Voisard, A., 2004. “Location-based services”. Morgan Kaufmann Publishers.