Device API è una delle specifiche del "mondo" HTML5 più interessanti: indica come interfacciarsi con gli strumenti del device, ad esempio la macchina fotografica o il microfono. Android 3.0 è il primo sistema operativo ad implementarlo sui telefonini di nuova generazione.

L'implementazione, in particolare, riguarda il cosidetto HTML Media Capture, ovvero la possbilità di "catturare" media (audio, foto, video) direttamente dal telefonino o tablet.

Il funzionamento è molto semplice: già dalla versione 2.2 Android supporta il tag input con l'attributo file

<form enctype="multipart/form-data" method="post">  <br />        <input type="file"></input><br />    </form>

che consente di fare l'upload di un file (scegliendolo dalla macchina fotografica, dal microfono, dalla galleria di foto o dai file audio presenti sul device) per poter essere poi gestito sia lato server come si gestiscono tutti i file di cui si è fatto l'upload sia – probabilmente… – tramite File API.

La versione 3.0 "Honeycomb" di Android implementa le specifiche di HTML Media Capture per specificare nell'HTML che tipo di device usare per l'upload del file. Si può dunque usare una delle modalità seguenti:

<input type="file" accept="image/*;capture=camera"></input><br />    <input type="file" accept="video/*;capture=camcorder"></input><br />    <input type="file" accept="audio/*;capture=microphone"></input>

per specificare che il file deve essere "catturato", rispettivamente, dalla macchina fotografica, dalla videocamera o dal microfono.

Questa funzionalità – per ora presente solo su Android, i device basati su iOS come iPhone o iPad non prevedono nemmeno l'input da file – è davvero interessante dal momento che amplia ulteriormente il campo di utilizzo di applicazioni web per smartphones, avvicinandone la potenzialità a quelle di applicazioni native.