Variables de inicio para tu aplicación iOS – Swift (Settings)

Standard

 

Una de las opciones para almacenar las preferencias de usuario es utilizar “Settings Bundle”. Implementar Settings Bundle te permite manejar tus preferencias desde las configuraciones propias de la app.

En el siguiente tutorial les mostraré como crear una aplicación sencilla iOS que te permitirá cambiar el color de fondo según la preferencia del usuario.

Screen Shot 2016-06-13 at 6.28.27 PM

Para el tutorial estaré trabajando con Xcode Versión 7.2

Al final del tutorial podrás consultar una url de donde podrás descargar el proyecto.

Continue reading

Memorias de la conferencia: “Best practices for great iOS UI Design”

Standard

Hola a todos.

La semana pasada gracias a una invitación que llegó a Hunabsys tuve la oportunidad asistir a una conferencia impartida por el señor Rodrigo Gómez, Senior Systems Engineer de Apple México. La conferencia trató sobre algunas buenas prácticas de diseño de interfaces de usuario para iOS.

Éstas buenas prácticas que se describieron en la conferencia nos sirven para contrarrestar muchos de los errores o dificultades con los que comúnmente nuestra aplicación móvil puede toparse.

El día de hoy les compartiré el listado de esas dificultades y una serie de tips que nos ayudarán a evitarlas.

Continue reading

Enviar una App a la Apple App Store

Standard
De la guía “Acerca de los Flujos de Trabajo para la Distribución de Apps” (About App Distribution Workflows) tomamos la siguiente imagen.
Para poder publicar nuestra App en la App Store, tenemos que tomar en cuenta tres pasos:
  1. Enroll. Darte de alta en el Apple Developer Program.
  2. Develop. Básicamente, desarrollar tu App.
  3. Distribute. El proceso de distribución.

App Distribution Workflow

Es en éste último paso donde me voy a enfocar en esta publicación.

Ahora, aunque el paso de hacer de Pruebas Beta (Beta Test App) y Liberar la App (Release App), son muy interesantes, lo vamos a dejar para una publicación a futuro.
Específicamente voy a hablar de las consideraciones que hay que tomar para Enviar la App (Submit App).
Nota. Dejo el link a las guías oficiales por si quieres revisar estos procesos a detalle.

Continue reading

Pruebas Automáticas de UI en Xcode 7

Standard

Hola, el día de hoy voy a ampliar un poco más el tema de las pruebas automáticas, ya que en Hunabsys estamos ampliando más la práctica como parte de los mecanismos de validación que estamos implementando en nuestros proyectos.

¿Qué son las Pruebas de UI?

Las Pruebas de UI son pruebas para validar la interfaz del usuario. No es que sea nuevo, ya lo hacemos todo el tiempo para validar nuestros proyectos, de manera manual, en las apps lo hacemos haciendo taps sobre los diferentes elementos de la pantalla.

Pero las pruebas manuales para realizar las regresiones es aburrido. Además de que tienes que recordar el probar todos los pasos para validar que no hayamos introducido algún error en cada iteración.

Hacer Pruebas Unitarias de clases Swift es relativamente sencillo: podemos probar “unidades” (leer una “clase”) a través de su interfaz de programación, así que escribimos código para asegurarnos que hace lo que se supone programamos.

En el caso de las Pruebas Automáticas de UI no es tan sencillo: debemos pretender que alguien está haciendo tap sobre la pantalla y arrastrando e interactuando con tu app para que haya cambios en la interfaz, debe de haber mecanismos para poder “ver” si la UI cambió de acuerdo a lo esperado.

Continue reading

Mostrar una Vista de Cargando en mi App de iOS (Loading View)

Standard

Introducción.

Cuando estás esperando porque se carguen datos de internet, necesitas mostrar una vista que indique que está esperando por los datos. La recomendación sería utilizar un “spinner” básico (UIActivityIndicatorView) para asegurar que la aplicación continúa en ejecución, y se puede acompañar de algún texto como “Loading …”.
A pesar de que es un comportamiento común en las aplicaciones, no es un control estándar y debe ser construido manualmente.

Aplicación de Muestra

A continuación les comparto un ejemplo del uso que se le puede dar a LoadingView.
Loading View

Continue reading