Saltar la navegación

5.2. Arquitectura

Antes de comenzar el desarrollo de cualquier sistema de software, el análisis y diseño de la arquitectura es uno de los factores más importantes. En el caso de las apps multimedia, es vital tener los conceptos claros sobre cómo se estructuran los módulos que las componen.

Tengamos en cuenta, por ejemplo, la diferencia entre una aplicación reproductora de audio y otra de vídeo. Mientras el usuario escucha música desde nuestra app, puede estar trabajando con un editor de textos o chateando por una app de mensajería. Si en un momento dado necesita detener la reproducción o cambiar la canción, puede lanzar comandos a nuestra aplicación, ya sea mediante la activación de nuestra activity o mediante botones en una notificación que habremos lanzado en la barra de notificaciones.

Entendemos por ello que nuestra app de audio se ejecutará como un servicio en segundo plano. Sin embargo, si el usuario está viendo un videoclip en otra de nuestras apps, es lógico suponer que nuestra app tendrá simplemente una vista enlazada al reproductor y se ejecutará solo en primer plano.

En el caso de una app captadora de vídeo o audio, podrían plantearse diferentes alternativas. Normalmente, si grabamos vídeo, necesitaremos una app en primer plano que muestre en pantalla lo que captamos a través de la cámara. Si adquirimos audio, podríamos plantearnos que el servicio corra en background o no, dependiendo del análisis de necesidades que queramos cubrir.

Creado con eXeLearning (Ventana nueva)