Note sulla versione di Android 1.1

Data: febbraio 2009
Livello API: 2

Questo documento fornisce le note sulla versione dell'immagine di sistema Android 1.1 inclusa nell'SDK.

Panoramica

L'immagine di sistema Android 1.1 fornita nell'SDK è lo strumento controparte dell'immagine del sistema di produzione Android 1.1, di cui è possibile eseguire il deployment Smartphone basati su Android a partire da febbraio 2009.

L'immagine di sistema Android 1.1 fornisce una versione aggiornata dell'API del framework. Come per l'API Android 1.0, l'API per Android 1.1 viene assegnato un identificatore intero, 2, archiviati nel sistema stesso. Questo identificatore, chiamato "livello API", consente sistema per determinare correttamente se un'applicazione è compatibile al sistema prima di installare l'applicazione.

Le applicazioni indicano il livello API di sistema più basso con cui sono compatibili aggiungendo un valore all'attributo android:minSdkVersion. Il valore dell'attributo è un numero intero corrispondente a un livello API identificativo dell'utente. Prima di installare un'applicazione, il sistema controlla il valore di android:minSdkVersion e consente l'installazione solo se il numero intero a cui si fa riferimento è minore o uguale al numero intero del livello API memorizzato nel sistema stesso.

Se utilizzi l'immagine di sistema Android 1.1 per creare un'applicazione compatibile con dispositivi basati su Android che eseguono Android 1.1 devi impostare il parametro Attributo android:minSdkVersion a "2" per specificare che la tua applicazione è compatibile solo con i dispositivi che utilizzano l'immagine di sistema Android 1.1 (o versioni successive).

Nello specifico, devi specificare il android:minSdkVersion in un elemento <uses-sdk> come figlio di <manifest> nel file manifest. Se impostato, l'attributo ha il seguente aspetto:

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

Se imposti android:minSdkVersion in questo modo, garantisci che gli utenti possano installare la tua applicazione solo se la loro dispositivi con la piattaforma Android 1.1. In questo modo, avrai la certezza la tua applicazione funzionerà correttamente sui loro dispositivi, soprattutto se utilizza le API introdotte in Android 1.1.

Se la tua applicazione utilizza le API introdotte in Android 1.1 ma non dichiara <uses-sdk android:minSdkVersion="2" />, funzionano correttamente sui dispositivi Android 1.1, ma non su Android 1.0 dispositivi mobili. In quest'ultimo caso, l'applicazione si arresterà in modo anomalo in fase di esecuzione quando tenterà di utilizzare le API Android 1.1.

Se la tua applicazione non utilizza le nuove API introdotte in Android 1.1, puoi indicare la compatibilità con Android 1.0 rimuovendo android:minSdkVersion o impostando l'attributo su "1". Tuttavia, prima di pubblicare l'applicazione, devi assicurarti di compilare dell'applicazione rispetto all'immagine di sistema Android 1.0 (disponibile nei SDK Android 1.0), per garantire che venga creato e funzioni correttamente Dispositivi Android 1.0. Devi testare l'applicazione rispetto al sistema immagini corrispondenti ai livelli API a cui è progettata l'applicazione la compatibilità.

Se hai la certezza che la tua applicazione non utilizzi le API di Android 1.1 e non ne ha bisogno, potrebbe essere più facile continuare a lavorare SDK per Android 1.0, anziché eseguire la migrazione all'SDK per Android 1.1 e avere per eseguire ulteriori test.

Librerie esterne

L'immagine di sistema include queste librerie esterne, che puoi dalla tua applicazione aggiungendo un <uses-library>

  • com.google.android.maps: consente all'applicazione di accedere ai dati di Google Maps. Tieni presente che per utilizzare Google Maps è richiesta una chiave API di Google Maps.

Compatibilità dispositivi

L'immagine di sistema Android 1.1 è stata testata per la compatibilità con i dispositivi Android elencati di seguito:

  • T-Mobile G1

Applicazioni integrate

L'immagine di sistema include le seguenti applicazioni integrate:

  • Sveglia
  • Demo dell'API
  • Browser
  • Calcolatrice
  • Fotocamera
  • Contatti
  • Strumenti per sviluppatori
  • Telefono
  • Email
  • Maps (e Street View)
  • Messaggistica
  • Musica
  • Immagini
  • Impostazioni

Localizzazioni UI

L'immagine di sistema fornisce stringhe dell'interfaccia utente localizzate per le lingue elencate di seguito.

  • Inglese, USA (en_US)
  • German (de)

Le stringhe di UI localizzate corrispondono alle impostazioni internazionali visualizzabili in l'emulatore, accessibile tramite l'applicazione Impostazioni del dispositivo.

Problemi risolti

  • L'avviso sveglia ora riproduce l'audio/la vibrazione direttamente, anziché tramite AlarmManager. L'avviso sveglia avvia la riproduzione di audio/vibrazione nel suo IntentReceiver, anziché all'avvio dell'attività. Queste modifiche dovrebbero impedisce il blocco degli allarmi dalle finestre di dialogo modali.
  • Correzioni per la sospensione del dispositivo.
  • Un solo tocco non apre più il tastierino durante la chiamata. Ora gli utenti devono toccarlo e trascinarlo.
  • Corregge un bug che causava la ricezione di circa 1 messaggio in uscita su 25 bloccare la connessione IMAP (a un server basato su Gmail) durante il trasferimento alla cartella Inviati.
  • Rimuove le voci di configurazione automatica dell'account che non funzionano o non sono testabili. Aggiunta di correzioni minori ad alcune delle voci rimanenti. apporta miglioramenti alle finestre di dialogo di avviso utilizzate per alcuni casi speciali.
  • Modifica l'intervallo di controllo della posta predefinito su ogni 15 minuti (invece di "Mai").
  • Corregge i bug relativi alle virgolette nelle password in IMAP, in modo che gli utenti possano includere caratteri speciali nelle password (ad es. spazi).
  • Corregge diversi errori nella creazione automatica e manuale dell'account
  • Migliora la generazione di report per vari errori di connessione, consentendo all'utente di diagnosticare più facilmente le configurazioni degli account non riuscite.
  • Corregge le notifiche dei nuovi messaggi per gli account POP3.
  • Garantisce il corretto controllo automatico degli account contrassegnati come "non controllare mai".
  • Ora mostra la data e l'ora in base alle preferenze dell'utente (ad es. 24 ore rispetto a AM/PM).
  • Ora viene mostrato cc: nella visualizzazione del messaggio.
  • Migliora il recupero da errori di connessione POP3.
  • Regole del parser POP3 allentate per consentire l'utilizzo dell'applicazione a server email non conformi.

Nuove funzionalità

  • Maps: aggiunge dettagli e recensioni quando un utente effettua una ricerca su Maps e fa clic su un'attività per visualizzarne i dettagli.
  • Telefono: il timeout dello schermo durante la chiamata ora è più lungo quando si utilizza il vivavoce.
  • Telefono: aggiunge un "Mostra tastierino" / "Nascondi tastierino" l'elemento alla chiamata per facilitare l'individuazione del tastierino DTMF.
  • Supporto del salvataggio degli allegati dei messaggi MMS.
  • Supporto del testo scorrevole nei layout.

Modifiche all'API

Panoramica

  • Aggiunge annotazioni per i sistemi di test, nessuna API effettiva (non di test) modifiche.
  • Aggiunge un metodo per consentire a un processo di determinare facilmente il relativo UID.
  • Supporto del testo scorrevole nei layout.
  • Aggiunge nuovi metodi per determinare i margini nelle visualizzazioni. È utile se stai scrivendo le tue sottoclassi di View.
  • Aggiunge nuove autorizzazioni che consentono a un'applicazione di trasmettere un SMS o un messaggio push WAP.
  • Pulizia dell'API: rimuove il costruttore protetto dalle immagini di sistema legate all'SDK.

Dettagli della modifica dell'API

Modulo o funzionalitàModifica descrizione
Annotazioni per i sistemi di test
È stata aggiunta l'annotazione LargeTest.
È stata aggiunta l'annotazione MediumTest.
Annotazione SmallTest aggiunta.
Consenti a un processo di conoscere facilmente il suo UID.
È stato aggiunto il metodo pubblico myUid() alla classe android.os.Process
Spaziatura interna nelle visualizzazioni
Metodo pubblico getBottomPaddingOffset() aggiunto alla classe android.view.View.
Metodo pubblico getLeftPaddingOffset() aggiunto alla classe android.view.View.
È stato aggiunto il metodo pubblico getRightPaddingOffset() alla classe android.view.View.
Metodo pubblico getTopPaddingOffset() aggiunto alla classe android.view.View.
È stato aggiunto il metodo pubblico isPaddingOffsetRequired() alla classe android.view.View.
Supporto per testo scorrevole
È stato aggiunto il metodo pubblico setMarqueeRepeatLimit(int) alla classe TextView
È stato aggiunto il campo pubblico android.R.attr.marqueeRepeatLimit
Nuove autorizzazioni
È stato aggiunto il campo pubblico android.Manifest.permission.BROADCAST_SMS
Campo pubblico android.Manifest.permission.BROADCAST_WAP_PUSH aggiunto
Pulizia dell'API
È stato rimosso il costruttore protetto java.net.ServerSocket.ServerSocket(java.net.SocketImpl).