Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Sviluppo</strong> <strong>di</strong> <strong>una</strong> <strong>piattaforma</strong> <strong>per</strong> <strong>lo</strong> <strong>streaming</strong> multime<strong>di</strong>ale in ambiente Android<br />
Performance - L'applicazione deve essere efficiente, in accordo con le<br />
restrizioni hardware proprie <strong>di</strong> un <strong>di</strong>spositivo mobile: la potenza <strong>di</strong> calco<strong>lo</strong><br />
limitata, la poca memoria <strong>di</strong>sponibile, la batteria limitata.<br />
Responsiveness - L'applicazione deve essere ve<strong>lo</strong>ce e il suo utilizzo imme<strong>di</strong>ato<br />
<strong>per</strong> l'utente me<strong>di</strong>o. Per facilitare ciò ogni Activity gestisce un Trigger (l'ANR)<br />
il cui compito è notificare al<strong>lo</strong> sviluppatore un tempo <strong>di</strong> latenza troppo ampio,<br />
che si attiva se non c'è risposta ad un evento <strong>di</strong> input entro 5 secon<strong>di</strong>, oppure<br />
se un BroadcastReceiver non completa l'esecuzione entro 10 secon<strong>di</strong>.<br />
Seamlessness – L'applicazione deve interagire “senza saldature” con il<br />
contesto in cui è lanciata e con le altre applicazioni, <strong>per</strong> evitare errori e <strong>di</strong>sagi<br />
all'utente, le cui cause possono riscontrarsi nelle interazioni improvvise con<br />
altre applicazioni oppure nella rimozione <strong>di</strong> dati ancora utili.<br />
Naturalmente queste sono so<strong>lo</strong> “linee <strong>di</strong> condotta” <strong>per</strong> uno sviluppo coerente con<br />
l'obiettivo finale <strong>di</strong> Android. Anche i pattern tipici e gli strumenti messi a<br />
<strong>di</strong>sposizione del<strong>lo</strong> sviluppatore sono so<strong>lo</strong> tools e in essi non risiede alc<strong>una</strong> reale<br />
innovazione.<br />
Per incontrare le reali innovazioni dobbiamo tagliare in maniera verticale<br />
un’applicazione tipica e scoprire che essa è composta da almeno uno <strong>di</strong> questi<br />
quattro elementi:<br />
– Activity<br />
– Service<br />
– BroadcastReceiver<br />
– ContentProvider<br />
43