API Android 2.3.3

Livello API: 10

Android 2.3.3 (GINGERBREAD_MR1) è una piccola release di funzionalità che aggiunge diversi miglioramenti e API alla piattaforma Android 2.3.

Per gli sviluppatori, la piattaforma Android 2.3.3 è disponibile come componente scaricabile per l'SDK Android. La piattaforma scaricabile include una libreria Android e un'immagine di sistema, oltre a una serie di skin emulatori e altro ancora. Per iniziare a sviluppare o testare su Android 2.3.3, utilizza Android SDK Manager per scaricare la piattaforma nell'SDK.

Panoramica dell'API

Le sezioni seguenti forniscono una panoramica tecnica delle novità per gli sviluppatori della versione 2.3.3, incluse le nuove funzionalità e le modifiche all'API framework dalla versione precedente.

Near Field Communication (NFC)

Android 2.3.3 offre un supporto migliorato ed esteso per la tecnologia NFC, per consentire alle applicazioni di interagire con più tipi di tag in nuovi modi.

Un nuovo set completo di API offre alle applicazioni l'accesso in lettura e scrittura a una gamma più ampia di tecnologie di tag standard, tra cui:

  • NFC-A (ISO 14443-3A)
  • NFC-B (ISO 14443-3B)
  • NFC-F (JIS 6319-4)
  • NFC-V (ISO 15693)
  • ISO-DEP (ISO 14443-4)
  • MIFARE Classic
  • MIFARE Ultraleggera
  • Tag NDEF forum NFC

La piattaforma fornisce inoltre un'API e un protocollo di comunicazione peer-to-peer limitati. Le attività in primo piano possono utilizzare l'API per registrare un messaggio NDEF che verrà inviato ad altri dispositivi NFC quando si connettono.

L'invio avanzato dei tag ora offre alle applicazioni un maggiore controllo su come e quando vengono avviati e quando viene rilevato un tag NFC. In precedenza, la piattaforma utilizzava un invio di intent in un solo passaggio per notificare alle applicazioni interessate che era stato rilevato un tag. La piattaforma ora utilizza una procedura in quattro passaggi che consente all'applicazione in primo piano di assumere il controllo di un evento di tag prima che venga trasmesso a qualsiasi altra applicazione (android.nfc.NfcAdapter.enableForegroundDispatch()). La nuova procedura di invio consente inoltre alle app di ascoltare specifici contenuti di tag e tecnologie di tag in base a due nuove azioni intent: android.nfc.action.NDEF_DISCOVERED e android.nfc.action.TECH_DISCOVERED.

L'API NFC è disponibile nei pacchetti android.nfc e android.nfc.tech. Le classi chiave sono:

  • NfcAdapter, che rappresenta l'hardware NFC del dispositivo.
  • NdefMessage, che rappresenta un messaggio di dati NDEF, il formato standard in cui i "record" che trasmettono i dati vengono trasmessi tra dispositivi e tag. Un messaggio NDEF alcuni record NDEF di diversi tipi. Le applicazioni possono ricevere questi messaggi da intent NDEF_DISCOVERED, TECH_DISCOVERED o TAG_DISCOVERED.
  • NdefRecord, inviato in un NdefMessage, che descrive il tipo di dati condivisi e trasporta i dati stessi.
  • Tag, che rappresenta un tag scansionato dal dispositivo. Sono supportati più tipi di tag, a seconda della tecnologia di tag sottostante.
  • TagTechnology, un'interfaccia che consente alle applicazioni di accedere alle proprietà dei tag e alle operazioni di I/O in base alle tecnologie presenti nel tag. Per un elenco completo delle tecnologie di tag supportate in Android 2.3.3, consulta android.nfc.tech.

La comunicazione NFC si basa sulla tecnologia wireless dell'hardware del dispositivo e non è presente in tutti i dispositivi Android. I dispositivi Android che non supportano NFC restituiranno un oggetto null quando verrà chiamato getDefaultAdapter(Context) e context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC) restituirà false. Tuttavia, l'API NFC è sempre presente, indipendentemente dal supporto hardware sottostante.

Per utilizzare l'API NFC, le applicazioni devono richiedere l'autorizzazione all'utente dichiarando <uses-permission android:name="android.permission.NFC"> nei file manifest.

Inoltre, gli sviluppatori possono richiedere filtri su Google Play, in modo che le loro applicazioni non siano rilevabili per gli utenti i cui dispositivi non supportano NFC. Per richiedere l'applicazione di filtri, aggiungi <uses-feature android:name="android.hardware.nfc" android:required="true"> al manifest dell'applicazione.

Per ulteriori informazioni, leggi la guida per gli sviluppatori di NFC.

Bluetooth

Android 2.3.3 aggiunge il supporto di piattaforma e API per le connessioni socket non sicure Bluetooth. Ciò consente alle applicazioni di comunicare con dispositivi semplici che potrebbero non offrire un'interfaccia utente per l'autenticazione. Per ulteriori informazioni, visita i siti createInsecureRfcommSocketToServiceRecord(java.util.UUID) e listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID).

Grafica

  • Una nuova classe BitmapRegionDecoder consente alle applicazioni di decodificare una regione rettangolare da un'immagine. L'API è particolarmente utile quando un'immagine originale è di grandi dimensioni e l'applicazione ha bisogno solo di parti dell'immagine.
  • Un nuovo campo inPreferQualityOverSpeed in BitmapFactory.Options consente alle applicazioni di utilizzare un metodo IDCT più preciso, ma leggermente più lento, nella decodifica JPEG. Questo a sua volta migliora la qualità dell'immagine ricostruita.

Framework multimediale

Riconoscimento vocale

L'API di riconoscimento vocale include nuove costanti per consentirti di gestire i risultati della ricerca vocale in nuovi modi. Sebbene le nuove costanti non siano necessarie per il normale utilizzo del riconoscimento vocale, potresti utilizzarle per offrire una visione diversa dei risultati di ricerca vocale nella tua applicazione. Per informazioni, visita la pagina RecognizerResultsIntent.

Livello API

La piattaforma Android 2.3.3 offre una versione aggiornata dell'API framework. All'API Android 2.3.3 viene assegnato un identificatore di numero intero 10, che viene memorizzato nel sistema stesso. Questo identificatore, chiamato "Livello API", consente al sistema di determinare correttamente se un'applicazione è compatibile con il sistema prima di installarla.

Per utilizzare nella tua applicazione le API introdotte in Android 2.3.3, devi compilare l'applicazione in base alla libreria Android fornita nella piattaforma SDK Android 2.3.3. A seconda delle esigenze, potrebbe anche essere necessario aggiungere un attributo android:minSdkVersion="10" all'elemento <uses-sdk> nel file manifest dell'applicazione. Se la tua applicazione è progettata per essere eseguita solo su Android 2.3 e versioni successive, la dichiarazione dell'attributo impedisce l'installazione dell'applicazione su versioni precedenti della piattaforma.

Per ulteriori informazioni, consulta Che cos'è il livello API?