Android es el sistema operativo elegido por muchísimos desarrolladores para crear sus apps, pero, estas seguro que tu app ofrece la mejor experiencia de usuario?
1. Evitar los Diálogos de Carga
Los diálogos de carga tienen el gran problema que bloquean la interfaz de usuario, por esto, mientras el diálogo esté activo, el usuario no va a poder hacer nada más en la pantalla. También, bloquean el botón de retroceso de los teléfonos, por lo que la única forma de salirse de la aplicación es presionar el botón de Home, cerrar la aplicación, y volver a empezar.
Los diálogos de carga, pues obviamente se usan cuando se desea cargar algo por debajo, y es una forma de informarle al usuario que algo está sucediendo en la aplicación, generalmente se usan para operaciones de consulta a algún servicio web, bases de datos, u operaciones que requieren mucho procesamiento, como lo es el manejo de imágenes.
Sumado a esto, si la aplicación tiene un mal manejo de errores, se puede correr el riesgo que la operación haya fallado, nunca se descarta el diálogo de carga, entonces la interfaz de usuario queda bloqueada eternamente hasta que el usuario decida cerrar por completo la aplicación y empezar de nuevo.
Para arreglar eso, se recomienda usar loading spinners (o un ProgressBar indeterminado) como parte del mismo layout en donde se ejecuta la operación. De esta forma se cumple la función de informar al usuario que algo sucede por debajo, pero no se bloquea la interfaz del usuario, por lo que este puede navegar por la aplicación, aunque la operación haya fallado.
Ahora si lo que se desea es mejorar el desempeño de la aplicación, trate de cargar la información en el background antes que el usuario la ocupe.
2. Usar un tamaño adecuado para los elementos Touch
Cuando se crean áreas tangibles (touch) en la pantalla, recuerde usar un tamaño adecuado para que el dedo del usuario pueda interactuar fácilmente con la vista. El alto de la vista debe de ser de al menos de 32dp, idealmente 48dp, esto genera un área tangible de entre 9 – 15 milímetros, lo cual es mas o menos el área usada por el dedo humano.
También para todas las vistas tangibles, recuerde crear los estados correspondientes (pressed & focus), de esta forma el usuario sabrá que realmente está presionando la vista, por lo tanto, espera un resultado.
3. Diseño no es Photoshop
Photoshop es una gran herramienta para crear todos los elementos de diseño de nuestra aplicación, pero muchos diseñadores cometen el error de crear TODOS los elementos gráficos de la aplicación, por más simples que sean, y se olvidan que Android tiene sus propios elementos de interfaz de usuario.
Cuando se crean los elementos gráficos de la aplicación, trate que estos sean lo más liviano posible. Dado que Android es un ecosistema muy fragmentado, la aplicación va a correr en todo tipo de dispositivos, desde teléfonos con varios años de existencia, que a la fecha se consideran de gama baja por sus especificaciones de hardware y poder de procesamiento, hasta los últimos dispositivos que hayan sido concebidos. Es por esta razón que se tienen que definir los tamaños adecuados a cada uno de nuestros elementos de diseño, correspondiendo a la densidad de pantalla del dispositivo, caso contrario, estos se pueden ver o muy grandes o muy pequeños, dependiendo del dispositivo.
Se pueden usar las siguientes resoluciones como referencia para crear los elementos de diseño para las diferentes densidades de pantalla:
- ldpi screen: 240 x 320 px
- mdpi screen: 320 x 480 px
- hdpi screen: 480 x 800 px
- xhdpi screen: 720 x 1280 px
Para más información sobre densidades de pantalla pueden revisar este link, o este otro.
Usar Photoshop para hacer todo el diseño de la aplicación crea otro problema, el cual es que incrementa el tamaño final de nuestra aplicación, y cuando el usuario la descarga usando la red telefónica, puede que esta le cueste extra al usuario, si el operador cobra por descarga. Una forma de reducir el tamaño de la aplicación es usar los componentes nativos que Android nos provee, ya sea crear drawables, selectors, layer-lists, colores o cualquier elemento gráfico que se pueda definir por medio de XML, o también se pueden crear imágenes de tipo 9Patch, a las cuales se les puede modificar sus dimensiones sin perder la calidad de la imagen.
4. Viviendo en el Pasado
Android ha tenido grandes cambios a nivel gráfico desde sus primeros pasos con su versión 1.6. Uno de los cambios mas grandes, fue la eliminación del botón de hardware de menú en el teléfono, migrando toda su funcionalidad para el ActionBar. Con los cambios más recientes que se han hecho, específicamente en lo que respecta el Material Design, podemos ver que al fin Google ha ordenado la casa y ha dejado las reglas claras en lo que respecta al diseño de la aplicación.
No importa si nuestra aplicación corre a partir de Gingerbread, esta no debe de tener el diseño de hace varios años. Trate the aplicar las últimas tendencias en diseño, invierta un tiempo en revisar lo que otras aplicaciones han hecho, y aplíquelo a su aplicación por medio de los patrones de diseño y estilo de Android. Y por sobre todas las cosas, no nos olvidemos del Material Design, el cual no solo puede ser aplicable a Android sino a otras plataformas también.
5. Crear experiencias de usuario Android
Cuando un usuario de Android instala su aplicación, este espera que su aplicación ofrezca la misma experiencia, se vea y se sienta como una aplicación de Android, la cual es totalmente diferente de otras plataformas.
Cuando se crean proyectos con una multiplataforma móvil, es común que primero se desarrolle la versión de iOS, ya que el tiempo de desarrollo de una aplicación en esta plataforma es generalmente menor en comparación a Android, lo cual no tiene nada de malo. El problema ocurre cuando se empiezan a reciclar los elementos gráficos, sin tomar en cuenta que Android tiene que soportar más resoluciones que iOS, además. O también que tiene sus reglas o patrones de diseño propios.
Cuando se desarrolla una aplicación de Android pura, no use iconografía, tipografía, action bars en la parte inferior de la pantalla (en Android van arriba) o títulos del ActionBar centrados en la pantalla (van alineados a la izquierda).
6. La navegación es mi marca
La plataforma de Android tiene un patrón de navegación muy bien definido, así que no trate de re-descubrir el agua tibia al crear o tomar prestado patrones de navegación de otras plataformas.
Ya existen soluciones definidas para el ActionBar, Navigation Drawer, y ahora el nuevo Toolbar, así que no tiene sentido usar librerías externas para implementar esos mismos componentes. Además, al tener librerías externas, se va a incrementar el tamaño final de nuestra aplicación de forma innecesaria.
7. Imitando aplicaciones nativas con un WebView
Existen herramientas de desarrollo para crear aplicaciones híbridas, como PhoneGap, pero este tipo de aplicaciones no ofrecen el mismo desempeño/funcionalidad que una aplicación nativa.
El desempeño, contenido y funcionalidad son las partes claves de toda aplicación, así que en vez de crear una aplicación web que corra como “nativa” solamente para estar en el Play Store, mejor crear un sitio web móvil, el cual tenga toda la funcionalidad que desea. Al tener una página web móvil, ya no se le va a mentir más al usuario, ya que la experiencia y desempeño van a ir acorde a una experiencia web.
Ahora no estoy diciendo que Phonegap es una mala herramienta, todo lo contrario, Phonegap es una gran herramienta, pero aplicada erróneamente en muchos casos. Las aplicaciones híbridas, para móviles brillan o se destacan cuando hay que crear prototipos de aplicaciones nativas, dado que el tiempo de desarrollo es mucho menor.
8. Quiero mi contenido ¡YA!
Como lo hemos dicho anteriormente, y lo mismo aplica para todas las plataformas. El contenido es el rey de la aplicación, para eso es que la gente quiere acceder a nuestra aplicación Así que cuando un usuario instala nuestra aplicación, quieren acceder al contenido de esta lo mas antes posible, por esta razón trate de hacer los procesos de registro lo más simples posibles. No pida más información de la que es requerida para que la aplicación funcione. Una buena práctica en los formularios de registro, es pre-llenar todos los campos posibles (correo electrónico, teléfono, nombre, etc) con la información que ya se encuentra en el dispositivo. También, como buena práctica, una vez que se tienen los datos básicos del usuario para hacer funcionar la aplicación, se le puede dar al usuario el recordatorio, por medio de un correo, link, o de cualquier forma, de que todavía tiene información extra que dar, pero esto no debe de impedir que el usuario pueda acceder al contenido de la aplicación como se mencionó anteriormente.
Otro gran problema con el acceso al contenido, son los famosos “splash screens” (o pantallas de inicio). Simplemente NO LAS USE! estas van en contra de las experiencias de usuario puras de Android. Las únicas veces en donde es permitido usarlas, es para darle algún tipo de introducción a la aplicación la primera vez que esta se ejecuta (nunca después de eso) después de instalada, y cuando no nos queda de otra, ya que hay que cargar datos necesarios para el funcionamiento de la aplicación.
9. Android != Teléfonos en Portrait
La gente no siempre usa sus dispositivos móviles en modo portrait (vertical), de hecho a veces es más cómodo usar el teléfono de forma horizontal, por esta razón siempre que cree nuevas interfaces o pantallas, recuerde probarlas en modo vertical y horizontal.
También recuerde que no solamente los teléfonos corren Android, también existen tabletas, wearables, y muy pronto automóviles. En el caso específicos de los teléfonos y las tabletas, las diferencias cada dia se hacen más borrosas, con teléfonos con pantallas de 6” y tabletas con pantallas de 7”, es casi nada la diferencia. Es mejor tomar unas cuantas horas extra para definir pantallas para tablets, en donde el contenido se despliega de forma ordenada, y se vea bien, créame, va a recibir muchos reviews positivos, además que su aplicación va a estar disponible en una mayor gama de dispositivos.
The post 9 Errores comunes de Experiencia de Usuario en Android appeared first on Revolución móvil.