InicioAplicacionesAutomatización de flujos de trabajo en iOS (I)

Automatización de flujos de trabajo en iOS (I)

A pesar de que para algunos usuarios el iPad se limita a un dispositivo para el consumo de información, lo cierto es que si combinamos sus funcionalidades básicas con los miles de aplicaciones disponibles en la App Store podemos realizar multitud de tareas relacionadas con la creación de contenido. Eso si, iOS impone sus propias limitaciones, así que correrá de nuestra cuenta intentar superar estas restricciones para conseguir los objetivos que nos hayamos marcado.

Publicidad

En los próximos artículos vamos a explicar cómo, a partir de una necesidad determinada (en nuestro caso, la publicación de un artículo en el blog, aunque las opciones y los casos a los que se puede aplicar son múltiples), automatizaremos el proceso mediante el uso de diferentes herramientas. Para ello, empezaremos explicando las limitaciones de iOS, qué posibilidades nos ofrece el sistema para evitarlas y qué herramientas externas podemos usar para la automatización. Terminaremos con un ejemplo para poner en práctica todo lo “aprendido”. La idea final es reproducir un flujo de trabajo de OS X en iOS, adaptándolo a las características propias del sistema operativo para dispositivos móviles de Apple.

Un poco de contexto

Una de las características principales de OS X es la gestión transparente (para el usuario) que hacen las aplicaciones de los archivos con los que trabajan. Si utilizamos iPhoto o iTunes, por poner dos ejemplos de aplicaciones de Apple, éstas se encargan de gestionar las fotografías, canciones, vídeos, etc., sin que el usuario tenga que preocuparse de su ubicación en el disco. Por supuesto, siempre podemos acceder a este contenido a través del Finder (de manera más sencilla en iTunes que en iPhoto) e incluso decirles a las aplicaciones que vamos a ser nosotros quienes gestionemos los archivos, pero probablemente tengamos menos problemas si dejamos que OS X se encargue de este trabajo. Algo que, como acostumbra a decir Apple “It just works”.

Esta filosofía se lleva al extremo en iOS. Aquí no solo es que las aplicaciones gestionen sus ficheros, sino que además, lo hacen de manera aislada. Cada aplicación utiliza sus propios recursos y, por lo tanto, no acceden a una estructura común de ficheros.
¿Y si queremos enviar un fichero de una aplicación a otra? Algo tan sencillo como, por ejemplo, recibir un correo electrónico con un documento adjunto que queremos ver en Pages. Para saltarse este bloqueo «autoimpuesto”, Apple ofrece la funcionalidad “Abrir en”.
De esta manera, si pulsamos sobre el icono del documento adjunto al correo veremos las diferentes aplicaciones con las que abrirlo, siempre y cuando las tengamos instaladas en nuestro dispositivo. El problema fundamental de esta forma de trabajar es la duplicación de archivos, de manera que en la aplicación Mail tendremos una copia del documento y en Pages otra (pero este punto es un tema que da para otra serie de artículos).

Para complicar aún más la situación, la ausencia de un gestor de ficheros al estilo Finder nos impide acceder a ellos de manera sencilla (sí, contamos con aplicaciones de terceros disponibles en la App Store que nos permiten acceder “más o menos” a los archivos, pero no son la solución ideal y, además, adolecen del mismo problema visto en el punto anterior).

 

Esquemas URL

Apple implementa los esquemas URL, una funcionalidad que permite abrir una aplicación desde otra pasando determinada información. Cuando nos llega un mensaje al iPhone con un número de teléfono o lo vemos en una página web (por ejemplo, si queremos hacer una reserva en un restaurante y hacemos una búsqueda en Safari), pinchando en el número podremos llamar directamente. De igual modo, podemos lanzar otras aplicaciones como la App Store o iTunes Store para comprar aplicaciones o canciones, respectivamente, que hayamos visto en nuestra navegación por Internet.
Esta integración no se limita a aplicaciones de Apple. Por ejemplo, la versión 4.1 de 1Password permite realizar búsquedas en el contenido que tengamos almacenado en la aplicación o utilizar su propio navegador.

x-callback-url

Para terminar, iOS permite el uso de la especificación x-callback-url (escrita por Greg Pierce) mediante la cual unas aplicaciones pueden ejecutar otras enviando parámetros y recibir el resultado de la ejecución. Supone, por tanto, una mejora sobre los esquemas URL comentados anteriormente. Para ello, las aplicaciones “destino” tienen que publicar los métodos de llamada que pueden utilizar las aplicaciones origen. Lamentablemente, el número de aplicaciones que soportan esta especificación es muy reducido, aunque se espera que en el futuro haya más desarrolladores que la implementes en sus app. En el momento de publicar este artículo, las aplicaciones compatibles con esta especificación son:

  • Instapaper (3,59€): servicio para almacenar páginas web y leerlas posteriormente sin necesidad de estar conectado a internet.
  • Chrome (gratis): el navegador web de Google.
  • Terminology (2,69€): navegador centrado en la búsqueda de definiciones de palabras y frases. Disponible solo en inglés.
  • Due (4,49€): un completo gestor de calendarios y alarmas.
  • Definition (0,89€ en oferta): diccionario de inglés sin conexión a Internet.
  • Drafts (3,59€): herramienta para capturar y compartir textos.
  • Scanner Go (0,89€): permite leer códigos de barras.
  • iCab Mobile (1,79€): navegador web.
  • Phraseology (3,59€): editor y procesador de textos.
  • iZettle (gratis): convierte el dispositivo iOS en un terminal para realizar pagos.
  • Notesy (4,49€): aplicación para tomar notas con integración con Dropbox y TextExpander y soporte de la sintaxis Markdown
  • Poster (2,69€): gestor de blogs en WordPress.

En el siguiente artículo veremos qué herramientas vamos a utilizar para realizar nuestra tarea de principio a fin. Se trata de una necesidad específica (como ya hemos comentado, la publicación de un artículo en un blog), pero creemos que puede ser interesante como ejemplo. Además, habrá partes del procedimiento que se puedan adaptar a otras necesidades determinadas y nos permitirá ver la forma en la que las aplicaciones se comunican entre si.

Con información de: Apple – iOS Developer Library | MacStories

 

Artículos relacionados

Artículos recientes