Inicio de Sesión con Facebook

Tras las vacaciones de Navidades me he decidido a empezar a codificar el proyecto.

Lo primero que ha tocado elegir es el entorno de desarrollo. La experiencia me decía que eligiera Eclipse, ya que es donde he programado siempre para Android mis apps. Así que sería todo mucho más fácil y sencillo, y sabría como configurar cada libreria, plugin, etc. al instante. Pero… ya que es un concurso universitario, me decidí a probar cosas nuevas y que me sirviera para sumergirme en otros mundos más profundos en los que sólo había nadado. Y ese mundo en el que sólo habia hecho proyectos pequeñitos, tipo ‘hola mundo’ y cositas de ese estilo para probar, más que nada, como funcionaba no es otro que el radiante y esperado: Android Studio (AS). Es el IDE que estaban pidiendo a gritos los desarrolladores Android para equipararse a los desarrolladores de iOS o Windows Phone. Eclipse, es un buen IDE, dentro de lo que cabe, pero es muy general como para que funcione a la perfección en un mundo tan grande como Android, por muy bien que este desarrollado el plugin (el ADT). Pero su llegada en la Google I/O de 2013, a la que tuve la oportunidad de asistir en directo en San Francisco (Y sentarme relativamente cerca, fila 12 del MegaSalón de la Planta 3 del Moscone Center), fue tan inesperada como bien recibida en el evento. Se lanzó la versión 0.1, o sea, una versión ni siquiera beta, así que por aquel entonces el equipo encargado de Android Studio junto al equipo dentro de Intellij IDEA que también colaboró (por muchos considerado como el mejor IDE para desarrollar en Java, del cual partieron como base para hacer AS) dijeron que era una versión algo inestable. Ahora van por la versión 0.4, lo bueno es que lo actualizan con cierta frecuencia, pero sigue siendo una versión que no está pulida del todo.

Elegido el IDE, el siguiente paso fue crear el proyecto, que simplemente es asignarle un nombre y configurar las versiones de Android permitidas en el Wizard inicial.

Y con toda la estructura de directorios montada, y un pequeño ‘hola mundo’ que genera el Wizard, ya sólo quedaba empezar a programar la app. Lo primero que decidi meter fue el inicio de sesión con Facebook. Facebook tiene un excelente SDK (para diferentes plataformas) con una documentación exquisita, por lo que sólo tuve que ir a al parte de Android y seguir los pasos que allí decía para configurarlo. Concretamente encontré los pasos para Android Studio (que no salen por defecto, tuve que bucear un poco para encontrarlos) y son estos: Configurar Facebook SDK para Android en Android Studio 

Y aquí empezaron a surgir los problemas, y es que una de los mayores focos de problemas de Android Studio es la incorporación a un proyecto de librerias externas. El problema en sí no es de Android Studio, sino de su motor de contrucción. En Eclipse se usa un sistema de construcción para generar todas las clases y crear el .apk que se instala en el smartphone, Android Studio utiliza uno distinto denominado Gradle. El reporte de errores de los desarrolladores acerca de Android Studio casi siempre van de la mano de un fallo en Gradle, fallos que se solucionan reiniciando el IDE, o limpiando el proyecto, es decir, la integración de Gradle con Android está aún un poco verde y cuanto esto mejore, Android Studio mejorará bastante.

Por lo que durante toda una mañana estuve tirándome de los pelos para depurar porque no reconocía el SDK de Facebook en mi Proyecto, una vez lo había importado al pie de la letra como indicaban en la página de desarrolladores de Facebook, al final lo que tuve que hacer fue: Limpiar el proyecto y reiniciar el IDE, en este orden exacto, sino seguía apareciendo el fallo de que Gradle no reconocia para compilar el SDK de Facebook. Menos mal que la comunidad que hay detrás de StackOverFlow en grande y omnipotente, jeje.

Una vez que pude usar las funciones del SDK de Facebook, el siguiente paso fue crear el inicio de sesión (y logout) para mi aplicación. Así que seguí el tutorial de autenticación de la página de Facebook: Login Con Facebook

Ejemplo de LogIn y LogOut

Pero antes de esto tuve que configurar mi cuenta de desarrollador de Facebook tal y como se indicaba en la configuración inicial que tuve que hacer, para obtener un ID de desarrollador.

Y tras hacer esto ya tengo montado el sistema de Login a través de Facebook, que servirá no sólo para autenticarse en la app, sino tambien para poder saber que amigos tiene el usuario y con quienes quiere compartir los eventos de quedadas que genere.

Así que el código resultante de esta primera iteración (mi primer commit de código real) que he tenido con el proyecto ha sido este: Commit GitHub

Esto es todo, hasta la próxima entrada. ¡Sed Felices!

Anuncios

Un pensamiento en “Inicio de Sesión con Facebook

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s