PROYECTO FIN DE GRADO GRADO EN INGENIERÍA INFROMÁTICA CLIENTE TWITTER CON COMPRESIÓN DE DATOS Autor: Plácido Fernández Declara Tutores: Luis Miguel Sánchez García Rafael Sotomayor Fernández Colmenarejo, Febrero de 2013 RESUMEN La popular red social Twitter es usada hoy en día en diversos lugares y momentos, gracias también a las redes móviles que nos proporcionan conexión a internet en casi cualquier lugar. Twitter permite publicar y mandar mensajes cortos de texto plano con un máximo de 140 caracteres, así como la lectura de estos mensajes cortos de otros usuarios a los que podemos seguir para tal propósito. Hacer uso de este servicio en zonas con buena cobertura, o cuando usamos Wi-fi no supone generalmente ningún problema. Es cuando nos encontramos en zonas de poca cobertura cuando vemos problemas para hacer uso de este servicio, ya que las velocidades de descarga pueden disminuir hasta el punto de necesitar decenas de segundos para disponer de los mensajes cortos, los “Tweets”. A esto hay que añadir que los planes de datos actuales están limitados de alguna forma (al alcanzar un número de Mb), por lo que la cantidad de Mb usada es hoy también un factor importante. Para ello esta aplicación ofrece la experiencia de un cliente Twitter sencillo en el que consultar los “Tweets” de a quien seguimos, así como publicar “Tweets”, haciendo uso de un Proxy que comprime estos datos considerablemente de forma que se reducen los tiempos de descarga para las zonas de poca cobertura y además se reduce el número de Mb consumidos por el dispositivo móvil. Índice de contenido RESUMEN .................................................................................................................................. 2 Índice de contenido ................................................................................................................... 3 Índice de Tablas ......................................................................................................................... 6 Índice de ilustraciones ............................................................................................................... 7 1. INTRODUCCIÓN ..................................................................................................................... 9 1.1 Motivación .................................................................................................................... 9 1.2 Objetivos ..................................................................................................................... 10 1.3 Estructura del documento ........................................................................................... 11 1.4 Glosario de términos y acrónimos .............................................................................. 12 2. ESTADO DEL ARTE ............................................................................................................... 13 2.1 Sistemas operativos móviles ....................................................................................... 13 2.1.1 iOS ....................................................................................................................... 13 2.1.2 Android ................................................................................................................ 16 2.1.3 Windows Phone .................................................................................................. 22 2.1.4 Blackberry OS ...................................................................................................... 24 2.2 Servicios Web .............................................................................................................. 26 2.2.1 REST ..................................................................................................................... 26 2.2.2 SOAP .................................................................................................................... 29 2.2.3 Comparativa ........................................................................................................ 29 2.3 Platform as a Service o Plataforma como servicio ...................................................... 31 2.3.1 Google App Engine .............................................................................................. 32 2.3.2 Heroku ................................................................................................................. 32 2.3.3 OpenShift ............................................................................................................. 33 2.3.4 Windows Azure ................................................................................................... 34 2.4 Twitter ......................................................................................................................... 34 3. MARCO REGULADOR ........................................................................................................... 36 4. ALGORITMOS DE COMPRESIÓN .......................................................................................... 37 4.1 Tasa de compresión .................................................................................................... 38 3.2 Tiempo de compresión ................................................................................................ 40 3.3 Tiempo de descompresión ......................................................................................... 42 3.4 Conclusiones sobre los algoritmos .................................................................................... 43 5. ANÁLISIS .............................................................................................................................. 45 5.1 Detalle de la aplicación ............................................................................................... 45 5.2 Requisitos software ..................................................................................................... 45 6. DISEÑO ................................................................................................................................ 55 6.1 Lenguaje de programación .......................................................................................... 55 6.1.1 Aplicación móvil .................................................................................................. 55 6.1.2 Servidor ............................................................................................................... 55 6.2 Base de datos .............................................................................................................. 56 6.2.1 Aplicación móvil .................................................................................................. 56 6.2.2 Servidor ............................................................................................................... 57 6.3 Comunicaciones .......................................................................................................... 58 6.4 Aplicación Android ...................................................................................................... 60 6.5 Servidor ....................................................................................................................... 63 6.6 Interfaz de usuario ...................................................................................................... 65 6.6.1 Auth Activity ........................................................................................................ 66 6.6.2 Timeline Activity .................................................................................................. 67 6.6.3 Preferences Activity ............................................................................................ 68 6.6.4 Update Status Activity ......................................................................................... 68 6.6.5 Statistics Activity ................................................................................................. 69 7. DESARROLLO ....................................................................................................................... 70 7.1 Aplicación móvil .......................................................................................................... 70 7.1.1 AsyncTask ............................................................................................................ 70 7.1.2 AuthActivity ......................................................................................................... 71 7.1.3 TweetezApplication ............................................................................................. 72 7.1.4 TimelineActivity ................................................................................................... 73 7.1.5 Cache ................................................................................................................... 75 7.1.6 UpdaterService .................................................................................................... 76 7.1.7 StatusUpdateActivity ........................................................................................... 76 7.1.8 PrefsActivity ........................................................................................................ 77 7.1.9 StatisticsActivity .................................................................................................. 78 7.1.10 BootReceiver ....................................................................................................... 78 7.1.11 StatusData ..........................................................................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages106 Page
-
File Size-