Android Insegnamento “Tecniche audiovisive”

Slides:



Advertisements
Presentazioni simili
Android A. Ferrari.
Advertisements

Applet Java.
Crea il tuo sito con Web Matrix e il Web Hosting su ASP.NET
Il Consolidamento di Servizi Virtual Server 2005 PierGiorgio Malusardi Evangelist - IT Professional Microsoft.
Universita degli studi di Napoli FedericoII Facoltà di Scienze MM FF NN Corso di laurea in informatica Studenti: Bonaiuto Bruna 566/316 Capano Fabrizio.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
IL LINGUAGGIO HTML Il linguaggio html. Il linguaggio html. Utilizzo dei tag. Utilizzo dei tag. Script Browser I link I link Caricamento dei dati sul server.
L E NUOVE APPLICAZIONI PER DISPOSITIVI MOBILI A SUPPORTO DELLA STATISTICA UFFICIALE Mercoledì 20 febbraio ore 12:45 Area Visioni [Le offerte tecnologiche.
Mobile.istat.it Dietro le quinte Paolo Di Domenico
Il Sistema Operativo.
Java Enterprise Edition (JEE)
Massa Laura Mela Enrica
1 Sviluppo applicazioni per terminali mobili 05/10/2005 Pisa Progetto per il corso di Reti Mobili Danele Picciaia
Smartphone e applicazioni: analisi e linee guida
Introduzione al linguaggio Java
Struttura dei sistemi operativi (panoramica)
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
CAPITOLO 2 INTRODUZIONE AL LINGUAGGIO JAVA E ALL'AMBIENTE HOTJAVA.
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
Workshop CNAF – Bologna 8 Luglio 2011 FARO Accesso Web a risorse e servizi remoti in ambiente Grid/Cloud A. Rocchi, C. Sciò, G. Bracco, S. Migliori, F.
Introduzione ad Android
Introduzione ad Android
Introduzione ad ASP.net
Architettura Java/J2EE
1 SMIL Synchronized Multimedia Integration Language Ciro Autiero.
C# LE BASI 2007 Prima lezione - Introduzione.
Applicazioni mobile Better Software 2009 Massimiliano Zani Sms Italia.
E. Ferro / CNAF / 14 febbraio /13 GRID.it servizi di infrastruttura Enrico Ferro INFN-LNL.
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
Kerio Connect 7.2 Partner Preview Marino Vigliotti Ingegnere Vendite Kerio Technologies.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Sistemi Informativi sul Web
Corso di Programmazione Grafica e Laboratorio Introduzione a OpenGL Prof. Daniele Marini.
ASP – Active Server Pages Introduzione Pagine Web Statiche & Dinamiche(ASP)
Insegnamento “Tecniche audiovisive” Corso di Laurea in Ingegneria delle Comunicazioni Symbian Marco Teodori Assistente Ricercatore - Fondazione Ugo Bordoni.
Sistema Operativo (Software di base)
Vannucci Roberto (5BM), De Nardin Axel (5AM)
  THE PRESENTATION HAS BEEN PRODUCED BY  SIMONE GIACCI  RICCARDO SAVOLDI  SERENA GARGANO.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
.NET Day 05 Febbraio 2015 #netday15 Windows NET Day.NET Day #netday15.
Creato da Riccardo Nuzzone
Sommario Cartelle Gestione delle risorse Manifest dell’applicazione
Insegnamento “Tecniche audiovisive” Corso di Laurea in Ingegneria delle Comunicazioni iOS Marco Teodori Assistente Ricercatore - Fondazione Ugo Bordoni.
OPERATIVO DI CASA APPLE:
Federico Angelicola Davide Bolognesi Andrea Furiosi
Google Drive in pillole A cura di: Alessandro De Bono.
Sviluppo per Pocket PC con SQL Server CE 2.0 Fabio Santini Silvano Coriani.NET Developer Evangelist Microsoft Corporation.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Progetto di Ingegneria del Web Anno Accademico 2007/2008 Stefano Pigiani Bruno Ricci Marco Ruzzon.
ANDROID FORENSICS.
ProgettAzione Tecnologie in movimento V anno. Applicazioni per sistemi mobili.
Easy Studio Realizzazione di un applicazione Android utile all'apprendimento Filippo Druda Istituto Tecnico Industriale Don Orione Fano Esame di Stato.
Eprogram informatica V anno.
ISIA Duca degli Abruzzi a.s. 2010/2011 prof. Antonella Schiavon
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
Dispositivi Mobili per Sentiment Analysis
+ Windows Phone : introduzione e configurazione dell’ambiente Nicolò Sordoni.
Mobile Apps e Android Tecniche Audiovisive Ing. Andrea Proietti Dip. DIET, Laboratorio di Multimedialità, I piano, stanza 111, Via Eudossiana 18,
Corso di programmazione di sistemi mobile 1 ANDROID Mobile Web Design.
Corso di programmazione di sistemi mobile 1 1 Android Architettura, ambiente di sviluppo e struttura di un progetto.
Programmazione orientata agli Oggetti Introduzione a Java.
Open City Platform è un progetto finanziato da Application Store Tutorial 30/09/2015.
Insegnamento “Tecniche audiovisive” Corso di Laurea in Ingegneria delle Comunicazioni Yahoo! Widget TV Marco Teodori Assistente Ricercatore - Fondazione.
Un sistema operativo è un componente del software di base di un computer la cui funzione è quella di gestire le sue risorse hardware e software,fornendo.
DA e controlli DAFNE Riccardo Gargana Frascati 13/12/ /12/13.
Transcript della presentazione:

Android Insegnamento “Tecniche audiovisive” Marco Teodori Assistente Ricercatore - Fondazione Ugo Bordoni Insegnamento “Tecniche audiovisive” Corso di Laurea in Ingegneria delle Comunicazioni

Agenda Cos’è? Storia Architettura Android features Ambiente di sviluppo Android oltre il mobile

Che cos'è Android? Android è uno stack software per dispositivi mobili costituito da: Il sistema operativo Middleware Key application Ambiente di sviluppo per programmare applicazioni in linguaggio Java

Storia Annuncio release candidate sdk 1.0 2005 : Acquistato Android Inc. 2007 : Costituzione della Open Handset Alliance 1° versione SDK 2008 : G1 T-Mobile Rilascio sorgente con licenza Apache 2 Annuncio release candidate sdk 1.0 Possibilità di acquisto Dev Phone 1 2009 : Rilascio sdk 1.5 Cupcake >> tastiera virtuale Rilascio sdk 1.6 >>Quick search box Rilascio sdk 2.0 2010: Rilascio sdk 2.2 Froyo 2011 : Rilascio sdk 2.3 GingerBread Rilascio sdk 3.0 Open Handset Alliance (OHA) è una formazione commerciale composta da 78 imprese. Si occupa di sviluppare standard aperti per dispositivi mobili. I membri, si contraddistinguono in 5 categorie: Mobile operators Software companies Commercialization companies Semiconductor companies Handset manufactures

Architettura

Architettura/Linux Kernel Android adotta la versione 2.6 di Linux: Gestione della sicurezza Memory Management Process Management Network Stack Driver Model Il kernel agisce anche da layer di astrazione fra l'hardware e il resto dello stack software.

Architettura/Libraries Android comprende un vasto set di librerie C/C++ : System C library: derivate BSD ottimizzata per dispositivi mobili Linux-based Media Libraries: basate su PacketVideo's OpenCORE Surface Manager: accesso al sottosistema di visualizzazione LibWebCore SGL-motore grafico 2D 3D libraries-derivate da OpenGL ES 1.0 APIs FreeType SQLite

Architettura/Android Runtime Android include un set di librerie di base che fornisce la maggior parte delle funzionalità disponibili nel linguaggio di programmazione Java. Ogni applicazione Android gira in un proprio processo, con la propria istanza della macchina virtuale Dalvik. La Virtual Machine Dalvik esegue file Dalvik Executable (.dex), ottimizzata per dispositivi con memoria ridotta. La VM Dalvik si basa sul kernel Linux per le funzionalità di base offerte da quest'ultimo, come il threading e di memoria a basso livello di gestione.

Architettura/Application Framework 1/2 Gli sviluppatori possono sfruttare tutto l'hardware del device: per accedere alle informazioni di posizione eseguire applicazioni in background allarmistica Gli sviluppatori hanno pieno accesso alle APIs usate per le applicazioni core.

Architettura/Application Framework 2/2 Alla base delle applicazioni c'è un ricco insieme di servizi e sistemi, che includono: Un ricco ed estendibile insieme di Viste: elenchi, griglie, caselle di testo, pulsanti ed un browser web Content Providers, che permette di accedere ai dati di altre applicazioni e di condividere con i propri Resource Manager, che provvede all'accesso alle risorse “non-code” come: localized strings, graphics, e layout files Notification Manager che permette alle applicazioni di attivare avvisi nella status bar Activity Manager che gestisce il ciclo di vita delle applicazioni

Android Features 1/5 Set di Layout - VGA - 2D Graphics - 3D Graphics basate sulle specifiche OpenGL ES 2.0 - Layout tradizionali per smartphone Storage - SQLite Connectivity - GSM/EDGE - IDEN - CDMA - EV-DO - UMTS - Bluetooth - Wi-Fi - LTE - WiMAX

Android Features 2/5 Messaging - SMS - MMS Web browser - Utilizza WebKit come motore di rendering e V8 Chrome per il motore Javascript Java support - Si possoo scrivere applicazioni in Java, ma Android non ha una Java Virtual Machine e quindi il bytecode non sarà interpretato, e quindi eseguito. E' necessario ricompilare il bytecode Java in un eseguibile Dalvik, che sarà eseguito dall'apposita virtual machine. Dalvik è una virtual machine progettata per Android ed ottimizzata per sistemi alimentati a batteria con limitata memoria e CPU. Il supporto a J2ME è offerto grazie a terze parti come J2ME MIDP Runner.

Android Features 3/5 Media support - H.263, H.264 - MPEG-4 SP - AMR, AMR-WB - AAC, HE-AAC - MP3 - MIDI - Ogg Vorbis - WAV - JPEG,PNG,GIF,BMP Streaming media support - RTP/RTSP streaming (3GPP PSS, ISMA) - HTML progressive download (HTML5 <video> tag) - Adobe Flash Streaming (RTMP) - Apple HTTP Live Streaming - Microsoft Smooth Streaming - Adobe Flash HTTP Dynamic Streaming

Android Features 4/5 Multi-touch - Supporto nativo al Multi-touch Bluetooth versione 2.2+ di Android - A2DP, AVRCP - Trasferimento file OPP - Accesso alla rubrica PBAP - Invio contatti tra dispositivi Videocalling ( non supportata su tutti i dispositivi ) Multitasking

Android Features 5/5 Voice based features - ricerca Vocale - comandi Vocali (supportati dalla versione 2.2) Tethering - supportato ufficialmente dalla versione 2.2 , permettendo al dispositivo dotato di Android di funzionare da wireless/wired hotspot.

Ambiente di sviluppo Android API Development tools Emulatore Android Dalvik Debug Monitoring Service (DDMS) Documentazione ed esempi

Creazione, compilazione, emulazione Un’applicazione è descritta da tre tipi di file: Codice Java Risorse statiche XML Manifest.xml

Esempio

Ciclo di vita di una applicazione 1/2 Le applicazioni running sono gestite in una gerarchia: foreground process (priorità critica) visible process (alta priorità) service process (bassa priorità) background process empty process Le Activity sono mantenute in un activity stack (LIFO) Un activity ha tre stati: running o active, paused, stopped

Ciclo di vita di una applicazione 2/2

Pubblicare un'applicazione Iscriversi al market come sviluppatore (25€) Dare un numero di versione Firmare il pacchetto Pubblicare l'applicazione Google trattiene il 30% degli incassi

Android Security Model Ogni processo viene eseguito in una DVM separata File non condivisi tra applicazioni Linux + Android permission model UID e GID distinti assegnati all'installazione Stack address randomization

Android Permissions Limite alle funzionalità di un software: android.permission Granularità sulle azioni e sull'accesso ai dati Specificate nel file manifest <uses-permission android:name="android.permission.READ_CONTACTS"> </uses-permission> android:name="android.permission.WRITE_CONTACTS">

Android oltre il mobile People of Lava Sweden è il primo produttore di TV ad utilizzare Android 1.5 su i suoi apperecchi

Conclusioni Ambiente di sviluppo open source L'architettura è disegnata pensando anche allo sviluppatore E’ possibile testare l’applicazione sul device Lo sviluppo è semplice e veloce