Android

¿Qué es Firebase?

Si trabajas haciendo apps para móviles, sabes lo complicado que resulta a veces realizar algunas operaciones, sobre todo la gestión multidispositivo con la base de datos. Por ejemplo a la hora de realizar aplicaciones muy grandes como CLMs, hay una enorme inversión de horas de trabajo para crear un backend poderoso que nos permita sincronizar de forma bidireccional la comunicación entre dispositivo y servidor aunque estemos desconectados de la red.

Firebase se podría decir que es un framework de trabajo de Google que nos ayuda con esto y con muchas cosas más. Aunque tiene soporte para web, está más orientada al desarrollo móvil iOS y android, para que los desarrolladores no tengan que preocuparse de desarrollar y mantener un servidor con su backend, además de ofrecer herramientas para la interconexión entre la app y el backend.

 

Firebase dispone de diferentes funcionalidades, entre las que se encuentran:

  • Base de datos en tiempo real: una base de datos gestionada por Google basada en JSON que nos permite, mediante eventos, tener funcionalidades en tiempo real. También nos permite llevar una gestión automática de los datos en el caso de que la aplicación se encuentre sin conexión, sincronizando todos los cambios una vez haya recuperado dicha conectividad.
  • Sistema de autentificación de usuarios tanto por email/contraseña como por otros sistemas como facebook, twitter, google, github, etc.
  • Cloud Messaging para el envío de notificaciones push a los dispositivos de una forma sencilla.
  • Un sistema de almacenamiento y sincronización de ficheros con el dispositivo.
  • Un sistema de hosting estático, ideal para realizar páginas estáticas o utilizarlo a modo de CDN de la app.
  • Sistema de reporting de errores.
  • Laboratorio de pruebas, para realizar pruebas en los dispositivos.
  • Funciones lambda basadas en NodeJS para realizar mediante eventos ciertas operaciones.
  • Conexión con AdMob para la monetización de la aplicación.
  • Configuración remota de la aplicación, pudiendo cambiar dinámicamente funcionalidades de la misma.

Lo más llamativo de Firebase es el Free Tier que ofrece, puesto que un proyecto para arrancar es gratuito, pudiendo dar el salto al pago cuando la aplicación haya crecido lo suficiente. Como opciones de pago disponemos de una tarifa plana de 25$ al mes que nos ofrece lo necesario para funcionar en proyectos de mediana envergadura. También disponemos de un «pago por uso» que nos permite pagar por aquellos recursos que utilicemos y que nos permitirá, de una forma escalonada, ir aumentando los costes poco a poco, según va creciendo nuestra aplicación.

Phonegap, programar para móviles en HTML5

Programar para dispositivos móviles a veces es una cuestión complicada ya que cada dispositivo cuenta con sus propias herramientas, lenguajes y peculiaridades. Por ejemplo, si queremos programar en Windows Phone, usaremos HTML o C# (.Net), mientras que para Android lo haremos en Java y en Objetive-C para IOS. ¿Cuantos de nosotros tiene tiempo para aprender todo esto como hobby y no de forma profesional? ¿No sería maravilloso poder hacer las aplicaciones móviles sencillas utilizando HTML?

PhoneGap o también conocido como Apache Cordova es un framework que desarrolla (compró) Adobe y que permite crear aplicaciones para dispositivos móviles utilizando HTML. Realmente PhoneGap crea una vista web donde cargará el contenido de la carpeta www del proyecto, cargando en todo momento páginas web en HTML.

Esto esta muy bien, pero ¿Cómo trabajo con los datos? Es fácil, con Javascript. PhoneGap provee de un API en Javascript para interactuar con el teléfono, por ejemplo para el acceso a base de datos, a la cámara, GPS, contactos, etc. Por tanto trabajar con PhoneGap es como hacer una web utilizando un API de javascript especial. También existe la posibilidad de trabajar nativamente, ya que PhoneGap lo único que hace es crear un proyecto especial para el dispositivo, por lo que creara un proyecto de eclipse para android o un proyecto de xcode para IOS, por lo que podemos utilizar plugins nativos o hacernos nosotros mismos el nuestro.

Por último mencionar que PhoneGap tiene soporte para iPhone/iPad, Android, Windows Phone y BlackBerry y en menor medida tiene soporte de Bada, Symbian y WebOS. Así que si quereis hacer una app para IOS, Android o Windows Phone, es una buena opción echarle un vistazo a PhoneGap.

Preparando la versión 2.1 del plugin UserAgent theme switcher

Estoy trabajando en la nueva versión del plugin de wordpress User Agent Theme Switcher. El plugin para la gestión de diferentes navegadores móviles, de escritorio, etc. que permite cambiar el template de wordpress entre los diferentes navegadores.

Las mejoras propuestas para esta nueva versión son:

  • Añadir WordPress como useragent reconocido y no generar alerta, aunque no sera incluido como opción configurable, ya que será solo para pingbacks y trackbacks
  • Nuevos navegadores para iPad y Kindle gracias a la colaboración de ovi_mihai
  • Nuevos bots configurables con GoogleBot y GoogleBot mobile

Espero tener listos los cambios en las próximas semanas. Gracias a todos los que enviaron los useragents no soportados y a aquellos como ovi_mihai que ayudaron con el código.

Router Wifi en el móvil o como salir de un apuro sin internet

WifiDesde que tengo un móvil de HTC con Android, nunca pense en que iba a utilizar una aplicación llamada «Router Wifi», hasta la otra noche. «Router Wifi» es una aplicación, en mi caso de HTC para Android, aunque ya casi todos los móviles modernos disponen de alguna opción similar y que básicamente, lo que hace es simular un router como el que podemos tener en casa pero utilizando el teléfono móvil y su red 3G. Al activar esta aplicación se genera una red wifi, a la cual podemos conectarnos desde otros dispositivos entre ellos un portátil.

Os pongo en contexto: 2:30 de la madrugada, subiendo los últimos cambios de un proyecto y pensando en ir a dormir ya que al día siguiente toca estar a las 7 en pie. Cuando solo queda un archivo por subir pero quizás sea mas importante que el resto de archivos que ya había subido, el FTP deja de funcionar, pero me fijo y no funcionaba internet. Me voy del despacho al salón, reinicio el router de Telefónica pero sigue sin funcionar, pero no podía acostarme sin subir ese último archivo.

HTC Android Router Wifi

Medio desesperado y sin saber que hacer, se me ocurre utilizar la aplicación «Router Wifi» del teléfono móvil, ya que pensé que quizás era el momento de utilizarlo por primera vez. Activo el «Router Wifi» de HTC para Android, configuro los datos de seguridad de la red y me conecto con el portátil. Hago una primera prueba con Google y veo que se conecta, vuelvo a abrir la conexión FTP y veo que también, así que termino de subir con éxito el archivo y pruebo el proyecto. Todo funcionaba genial, me salvó de un autentico apuro.

Después de ese momento, estoy un poco mas feliz por tener un Android.

Próxima actualización de Android Market

Google está preparando una actualización del Android Market con motivo de la nueva versión de Android Gingerbread 2.3. Esta actualización estará disponible en un par de semanas, es decir, antes de finalizar el año 2010 y ademas de mejoras visuales notorias, se han añadido nuevas categorías como widget y livewallpaper. Además de esto, se ha ampliado el tamaño máximo de las aplicaciones hasta los 50MB, lo que permitirá crear juegos para Android más ricos visualmente hablando. También se ha reducido el tiempo de devolución de las aplicaciones compradas desde las 24 horas actuales a los 15 siguientes minutos tras la compra, ya que según Google, los usuarios devuelven las aplicaciones en los 10 minutos tras su compra. Por último se añadirán los vídeos promocionales de las aplicaciones. Todo esto es poco, ya que según Google, aún no han terminado con los cambios aunque seguramente los cambios que tienen en mente realizar, los liberaran en futuras versiones del Android Market.

Os dejo un par de capturas de pantalla del nuevo Android Market de la mano de Google.

Steve Jobs siente miedo por Android

Android vs iPhoneCierto es que iPhone es un gran teléfono móvil con un gran sistema operativo detrás y que la sensación de uso de iPhone es muy superior a la de Android, pero esto no quiere decir que Steve Jobs empiece a sentir miedo por el desarrollo que Android está teniendo en el mercado de la telefonía móvil. Steve Jobs siempre se ha sentido orgulloso de sus productos y salvo cuando realizaba una dura batalla contra IBM y Microsoft, Jobs no se dedicaba a despotricar sobre otros productos sino a alabar los suyos. Desde que se ofrecieron las últimas cifras de mercado, en las cuales Android ya había sobrepasado a iPhone, Steve Jobs esta empezando a preocuparse. Primero fueron declaraciones sobre que su teléfono era mas «puritano» haciendo referencia a la restricción de aplicaciones censurables que realizaba la marca de la manzana y después de varios rifirafes, Steve Jobs se pone en la piel de los desarrolladores criticando la fragmentación que complica el desarrollo de aplicaciones para Android.

Como desarrollador que ha realizado algunas aplicaciones para Android, debo decir que programar para esta plataforma es muy fácil, ya que con unos conocimientos básicos de Java podemos empezar a programar y su desarrollo de interfaz xml que recuerda un poco al html, la verdad es que no es muy complicado. Lo que si he de decir es que la cosa complica un poco cuando tenemos diferentes dispositivos con diferentes características como puede ser con cámara o sin ella, con bluetooth o sin el y mil cosas mas que nos podemos encontrar. La verdad es que esto en iPhone no pasa ya que se trata de un único teléfono que ha ido evolucionando, pero el mundo no se puede detener en un punto y siento tener que decir en contra de las declaraciones de Steve Jobs, que los desarrolladores desde que salieron del DOS, han debido de trabajar para diferentes formatos, escritorios con diferentes velocidades, versiones, resoluciones, colores y no quiero entrar ya en los que realizamos webs para Internet Explorer, Firefox, Safari, Opera, Chorme y un largo etc. Es por ello que un desarrollador que se precie, esta acostumbrado a realizar ciertas modificaciones de fragmentación para diferentes dispositivos.

Las últimas declaraciones de Jobs muestran como su todopoderoso imperio de telefonía con iPhone esta poco a poco cayendo y cada vez mas gente se pasa al más que versátil Android de Google y al no poder alabar sus productos por encima de Android, empieza la encarnizada guerra de criticas contra el rival. Siento ser un poco sensacionalista, y al igual que dije hace algún tiempo que Microsoft llegaba mal y tarde con Windows Phone 7 a esta guerra, tengo que decirle a Jobs que esta guerra la ha perdido pero aún nadie se lo ha dicho. Lo único que puede hacer Apple para mantener viva esta guerra y no acabar perdiendo con el tiempo es un cambio radical en su iPhone como liberar a los desarrolladores de la estricta política de censura o volver a realizar algo revolucionario en el mercado de la telefonía móvil.

Cuando GMail o GTalk para Android no funcionan

Hace un par de días me dejaron de funcionar las aplicaciones nativas de GMail y GTalk que vienen instaladas por defecto en Android. Puede que otros no las usen, pero para mi el hecho de que GMail y GTalk no funcionaran fue algo que me mató por dentro. GMail por ejemplo me dejó de descargar mensajes y por mucho que le daba a actualizar, no descarga los mensajes nuevos y GTalk directamente no me abría, me cargaba la pantalla de «cargando» y fugazmente desaparecía, es decir, GTalk no se abre. Como solución temporal configuré el correo de HTC e instale el Fring, pero el correo de HTC aunque bastante mejor que GMail, prefiero la ligereza y la velocidad de GMail, y el Fring, directamente no me gusta, ademas de que al rato de tenerlo abierto y estar en la home se me cierra solo no se por que.

Viendo que esto no era algo de algún cambio que estuvieran haciendo desde Google, me decidí a arreglarlo. La solución ha sido bastante mas sencilla de lo que me imaginaba, como siempre, un limpiado del programa es lo mejor, y para ello nos vamos a Ajustes > Aplicaciones > Administrar aplicaciones y una vez aquí, debemos buscar las aplicaciones que se llaman: «GMail«, «Almacenamiento de Gmail«, «Google Talk» y «Almacenamiento de Google Talk«, esta última solo sale «Almacenamiento de Google» pero se ve el icono de GTalk. En cada una de las fichas debemos de borrar los datos del sistema y para ello pulsaremos el botón de «Borrar datos» y listo, pero eso si, en las 2, su programa y su almacenamiento y si os pasa como a mi que no os funcionan ni GMail ni GTalk pues habrá que hacerlo en los 4. Una vez hecho esto, ya podemos abrir de nuevo las aplicaciones y GMail volverá a recibir correos, aunque tendrá que sincronizarse y si tienes muchos correos tardará un ratín, pero el GTalk funcionará a la primera.

Espero que os haya servido esta pequeña ñapa para cuando no funciona GMail para Android o no funciona GTalk para Android.

Publicado el plugin de WordPress UserAgent theme switcher 2.0

UserAgent theme switcherEn este puente del Pilar, cuando deberia de disfrutar de unas vacaciones, he pillado un gripazo que no me deja moverme de la cama, y como no puedo hacer otra cosa, he decidido finalizar el desarrollo del plugin de WordPress User Agent Theme Switcher. El plugin que ya se encuentra en su versión 2.0 trae importantes mejoras frente a su predecesor, ya que ademas de haberlo reescrito desde cero, se ha añadido funcionalidades, se han separado por funcionamiento las páginas, para que sea mas sencillo modificar las opciones y se ha dado soporte a unos cuantos navegadores mas. La lista de cambios respecto a la versión 1.2 es la siguiente:

  • Se ha reescrito todo el código del plugin para aumentar el rendimiento y para facilitar el desarrollo de futuras mejoras
  • Se ha separado la página de administración en 3 páginas, la de temas por navegador, el modo debug y la futura configuración del cache
  • Se han añadido etiquetas a los navegadores, como gecko a Firefox, mobile a Safari Mobile, Opera Mini, etc. para poder asignar un template por etiqueta para por ejemplo un tema para moviles con la etiqueta mobile
  • Se han añadido iconos para los navegadores y las etiquetas.
  • Se ha traducido todo el plugin al ingles para realizar las traducciones en otros idiomas en futuras versiones
  • Se ha añadido un boton para donar.
  • Se ha añadido soporte para Internet Explorer 9
  • Se ha añadido soporte para Camino para Mac
  • Se ha añadido soporte para Opera Desktop
  • Se ha añadido soporte para IceWeasel
  • Se ha actualizado Safari Mobile para que incluya el navegador del IpodTouch

Recuerdo a quien use este plugin, que puede reportar navegadores no soportados con el modo debug, algo que permitirá ir mejorando poco a poco el plugin.

El que quiera descargarlo puede hacerlo desde el administrador de WordPress buscando «User Agent Theme Switcher» o desde la pagina del plugin en WordPress

Algunas capturas:

Skype para Android, todo son problemas

SkypeEstoy muy interesado en poder tener Skype para Android, porque me permitirá realizar llamadas a amigos aprovechando la tarifa plana de 3g y no pagandola, por lo que para mi en algunos casos es interesante. Varias veces a la semana, suelo entrar en el Android Market en busca de la esperadísima versión oficial de Skype y con mas intensidad después de que Skype, en una clara estrategia de eliminación de la competencia ha negado el acceso a Nimbuz, Fring y similares al API de Skype, algo que decía a voces que estaban a punto de sacar la versión oficial.

Mi desilusión viene al ver que por fin esta la aplicación de Skype para Android en el Android Market, pero al intentar instalarla no he podido. Lo habré intentado como 10 veces sin éxito, a lo que automáticamente he ido a la web de Skype para Móviles skype.com/m y me cargaba una página para descargar Skype para Android, pero al pinchar en descargar me aparece una página de error 404. Indignadisimo, al ver que no había manera de bajarse Skype para Android, me he puesto a investigar por varios foros y blogs, encontrando solo quejas de usuarios diciendo que la versión esta muy verde, con muchos fallos y que no funcionaba bien.

Ahora digo yo, que pasa, ¿Que han eliminado la aplicación porque realmente no estaba lista para la puesta en producción? ¿Han sacado Skype para Android antes de tiempo por las criticas recibidas por cortar el servicio a Fring, Nimbuz y similares? Solo se que estoy muy triste, después de esperar con tanta ansia este programa y primero no poder instalarlo y después que no he visto a ningún usuario que no diese alguna queja sobre el programa. La verdad, esperaba mas de una empresa informática no española y mucho menos con tanto nombre como Skype.

Android ya es el segundo sistema operativo móvil en el mundo

Como cito en el título de este post, Android ya es el segundo sistema operativo móvil mas usado en este mundo. Según un estudio que ha realizado la consultora tecnológica Gartner según el crecimiento y uso de cada sistema operativo móvil, Android acaba de superar a BlackBerry, convirtiendose en el segundo sistema operativo móvil mas usado y con una estimación de que en los próximos 4 años alcance a la todopoderosa Nokia y su Symbian, pudiendo superar a esta en 2014. Según este estudio, en la actualidad y como se espera en los próximos años, Nokia con Symbian, seguirá al frente de los dispositivos móviles pero perdiendo cuota de mercado poco a poco frente a Android.

En la actualidad, el listado de sistemas operativos móviles mas usados es el siguiente:

  • Nokia, Symbian: 107.662.400 unidades, 40.1% cuota de mercado
  • Google, Android: 47.462.100 unidades, 17.7% cuota de mercado
  • RIM, Research In Motion, BlackBerry: 46.922.900 unidades, 17.5% cuota de mercado
  • Apple, iOS (Iphone): 41.461.800 unidades, 15.4% cuota de mercado
  • Microsoft, Windows Phone: 12.686.500 unidades, 4.7% cuota de mercado

Según las previsiones de crecimiento, y aunque desconozco si se han contado con los futuros proyectos que Google plantea para Android, como Google TV, se espera que en tan solo 4 años, Android alcance a Symbian, por lo que para 2015 y si las cosas no se tuercen, podríamos ver desbancada a Nokia de la privilegiada primera posición en el mundo de los dispositivos móviles. Las previsiones para 2014 son las siguientes:

  • Nokia, Symbian: 264.351.800 unidades, 30.2% cuota de mercado
  • Google, Android: 259.306.400 unidades, 29.6% cuota de mercado
  • Apple, iOS (Iphone): 130.393.000 unidades, 14.9% cuota de mercado
  • RIM, Research In Motion, BlackBerry: 102.579.500 unidades, 11.7% cuota de mercado
  • Microsoft, Windows Phone: 34.490.200 unidades, 3.9% cuota de mercado

Veremos si la evolución e innovaciones de las compañías hacen de esto una realidad o no. De momento y en opinión de un humilde servidor, Android, si el resto de compañías siguen con sus actuales políticas, se convertirá en breve en el numero uno de los sistemas operativos móviles, ya que Nokia no evoluciona ni innova, estaba genial cuando tenia móviles de toda la vida, pero ha llegado tarde y con grandes tropezones a la carrera de las nuevas tecnologías móviles. BlackBerry que mantendrá su posición corporativa y Apple con iOS y sus políticas restrictivas, no llegaran a donde todos esperan que lleguen. Solo el tiempo dirá que pasara y pondrá a cada compañía en su lugar.

Buscando aparcamiento con Open Spot para android

Echando un vistazo a la web de Google Labs, me encuentro con una aplicación para Android que ha desarrollado Google bastante curiosa. La aplicación en cuestión es Open Spot, se trata de un programa, similar a un GPS con Google Maps, que nos indica plazas de aparcamiento libres para que podamos aparcar. El funcionamiento es muy sencillo, un usuario que va a desplazarse con el coche, indica al programa que va a dejar su aparcamiento libre, aunque supongo que también se puede hacer a pie si vemos un hueco, y automáticamente a los usuarios que esten cerca y tengan Open Spot para Android abierto, les aparecerá un POI en el mapa indicando que ahí se encuentra una plaza libre de aparcamiento. La verdad es que además de ser una aplicación bastante curiosa, es muy útil ya que para aquellos que vivimos en grandes ciudades, nos puede ahorrar mucho tiempo y gasolina que gastamos a base de dar vueltas a las manzanas para encontrar el dichoso aparcamiento. Resaltar también que el usuario puede recibir karma de otros usuarios que hayan encontrado aparcamiento gracias a el, por lo que puede resultar hasta divertido utilizarlo. Como nota restaltar que de momento solo se encuentra disponible en Estados Unidos, Canada y Paises Bajos, pero esperemos que llegue a España pronto. Si quereis echar un vistazo os dejo la web de Open Spot.

Open Spot marcando un spot

Open Spot recuperando Spots

Publicado el plugin de WordPress UserAgent theme switcher 1.2

UserAgent theme switcherAyer publiqué la versión 1.2 del plugin de WordPress «UserAgent theme switcher». Es plugin para quien no lo conozca es un plugin de WordPress que mediante un sencillo administrador, nos permite indicar que tema se mostrara a que navegador. De esta forma podemos crear o descargar un tema especifico para dispositivos moviles y decirle que iphone o android utilicen este tema. Entre las principales novedades que se presentan en esta nueva versión, se encuentran:

  • Se ha mejorado el patrón de Safari Mobile, ya que este difiere levemente de si se trata de Android o iPhone.
  • Si usas el modo debug, ahora puedes eliminar useragents de la lista de no soportados.
  • Si usas el modo debug, ahora puedes reportar un useragent no soportado.

Aunque puede ser una tontería, usar el modo debug puede ser importante para el desarrollo y mejora del sistema, ya que ayuda a detectar y reportar useragents no soportados aun y que puedan ser añadidos en un futuro.

Scroll al inicio