Data: luty 2009 r.
Poziom interfejsu API: 2
Dokument zawiera informacje o wersji obrazu systemu Android 1.1 dołączonego do pakietu SDK.
- Omówienie
- Biblioteki zewnętrzne
- Zgodność urządzeń
- Wbudowane aplikacje
- Lokalizacje interfejsu użytkownika
- Rozwiązane problemy
- Nowe funkcje
- Zmiany w interfejsie API
Omówienie
Obraz systemu Android 1.1 dostarczony w pakiecie SDK jest odpowiednikiem w wersji deweloperskiej obrazu systemu Android 1.1 w wersji produkcyjnej, który można wdrożyć na telefonach z Androidem od lutego 2009 r.
Obraz systemu Androida 1.1 zawiera zaktualizowaną wersję platformy API. Podobnie jak w przypadku Android 1.0 API, Android 1.1 API jest przydzielony identyfikator w postaci liczby całkowitej – 2 – który jest zapisanych w samym systemie. Ten identyfikator, nazywany „poziomem interfejsu API”, umożliwia stosowanie funkcji systemu pozwalającego poprawnie określić, czy aplikacja jest zgodna z systemu.
Aplikacje wskazują najniższy systemowy poziom interfejsu API, z którym są zgodne, dodając
wartość atrybutu android:minSdkVersion
.
Wartość atrybutu jest liczbą całkowitą odpowiadającą poziomowi interfejsu API
Przed zainstalowaniem aplikacji system sprawdza wartość zmiennej android:minSdkVersion
i zezwala na instalację tylko wtedy, gdy liczba całkowita, na którą się odwołuje, jest mniejsza lub równa liczbie całkowitej poziomu interfejsu API przechowywanej w systemie.
Jeśli do kompilowania aplikacji zgodnej z urządzeniami z Androidem w wersji 1.1 na platformie Android 1.1 używasz obrazu systemu Android 1.1, musisz ustawić atrybut android:minSdkVersion
na „2”, aby wskazać, że aplikacja jest zgodna tylko z urządzeniami korzystającymi z obrazu systemu Android 1.1 (lub nowszego).
W szczególności należy określić android:minSdkVersion
w elemencie <uses-sdk>
jako potomnym dla argumentu
<manifest>
w pliku manifestu. Po skonfigurowaniu parametru
wygląda tak:
<manifest>
...
<uses-sdk android:minSdkVersion="2" />
...
</manifest>
Dzięki temu ustawieniu android:minSdkVersion
użytkownicy będą mogli zainstalować Twoją aplikację tylko wtedy, gdy ich urządzenia będą działać na platformie Android 1.1. Dzięki temu Twoja aplikacja będzie działać prawidłowo na ich urządzeniach, zwłaszcza jeśli korzysta z interfejsów API wprowadzonych w Androidzie 1.1.
Jeśli aplikacja korzysta z interfejsów API wprowadzonych w Androidzie 1.1, ale nie deklaruje <uses-sdk android:minSdkVersion="2" />
, będzie działać prawidłowo na urządzeniach z Androidem 1.1, ale nie na urządzeniach z Androidem 1.0. W tym drugim przypadku aplikacja ulega awarii w czasie działania, gdy
próbuje korzystać z interfejsów API Androida 1.1.
Jeśli aplikacja nie korzysta z nowych interfejsów API wprowadzonych na Androida
1.1, możesz wskazać zgodność z Androidem 1.0, usuwając
android:minSdkVersion
lub ustawiając atrybut na wartość „1”. Pamiętaj jednak:
przed opublikowaniem aplikacji musisz upewnić się, że
aplikacji na obraz systemu Android 1.0 (dostępny w
(Android 1.0 SDK) musi się kompilować i działać prawidłowo
Urządzenia z systemem Android 1.0. Aplikację należy przetestować w porównaniu z systemem
obrazy odpowiadające poziomom interfejsu API zaprojektowanym przez daną aplikację.
z którymi są zgodne.
Jeśli masz pewność, że Twoja aplikacja nie korzysta z interfejsów API Androida 1.1 i nie musi z nich korzystać, możesz kontynuować pracę w pakiecie Android 1.0 SDK, zamiast przechodzić na pakiet Android 1.1 SDK i przeprowadzać dodatkowe testy.
Biblioteki zewnętrzne
Obraz systemu zawiera te zewnętrzne biblioteki, do których możesz uzyskać dostęp w aplikacji, dodając element <uses-library>.
- com.google.android.maps – daje aplikacji dostęp do danych Map Google. Pamiętaj, że do korzystania z danych Map Google wymagany jest klucz interfejsu API Map.
Zgodność urządzeń
Obraz systemu Android 1.1 został przetestowany pod kątem zgodności z Urządzenia z systemem Android wymienione poniżej:
- T-Mobile G1
Wbudowane aplikacje
Obraz systemu zawiera następujące wbudowane aplikacje:
- Budzik
- Wersje demonstracyjne API
- Przeglądarka
- Kalkulator
- Aparat
- kontakty,
- Narzędzia dla programistów
- Dialer
- Wysyłając e-mailem
- Mapy (i Street View)
- Wiadomości
- Muzyka
- Zdjęcia
- Ustawienia
Lokalizacje interfejsu
Obraz systemu zawiera zlokalizowane ciągi znaków interfejsu dla języków wymienionych poniżej.
- angielski, Stany Zjednoczone (en_US)
- German (de)
Lokalizacja napisów interfejsu odpowiada lokalizacji wyświetlanej w emulatorze, do której można uzyskać dostęp przez aplikację Ustawienia na urządzeniu.
Rozwiązane problemy
- Alert budzika jest teraz odtwarzany bezpośrednio, a nie przez cały czas. AlarmManager: Alarm budzika rozpoczyna odtwarzanie dźwięku/wibracji Intencja odbiorcy, a nie przy rozpoczęciu aktywności. Te zmiany powinny zapobiega blokowania alarmów przez okna modalne.
- Poprawki na potrzeby uśpienia urządzenia.
- Pojedyncze kliknięcie nie powoduje już otwarcia klawiatury numerycznej podczas rozmowy. Użytkownik musi teraz dotknąć klawiatury i przesunąć ją.
- Naprawiono błąd, który powodował, że około 1 na 25 wysyłanych wiadomości powodowało zablokowanie połączenia IMAP (z serwerem Gmaila) po przeniesieniu do folderu Wysłane.
- Usuwa wpisy dotyczące automatycznej konfiguracji konta, które były uszkodzone lub nie można ich było przetestować. Dodaje drobne poprawki do kilku pozostałych wpisów. Wprowadziliśmy ulepszenia w przypadku okien z ostrzeżeniem używanych w kilku szczególnych przypadkach.
- Zmienia domyślny odstęp między sprawdzaniem poczty na co 15 minut (zamiast tego domyślnego ustawienia „Nigdy”).
- Naprawa błędów dotyczących cytowania haseł w IMAP, dzięki czemu użytkownicy mogą dodawać znaki specjalne w hasłach (np. spacje).
- Naprawiono różne błędy w konfiguracji konta automatycznej i ręcznej.
- Ulepszone raportowanie różnych błędów połączenia, które ułatwia użytkownikom diagnozowanie nieudanych konfiguracji kont.
- Rozwiązuje problemy z powiadomieniami o nowej poczcie na kontach POP3.
- Zapewnia prawidłowe sprawdzanie kont oznaczonych jako „Nigdy nie sprawdzaj”.
- Wyświetla datę i godzinę zgodnie z ustawieniami użytkownika (np. 24 godz. lub AM/PM).
- Teraz w widoku wiadomości wyświetla się DW:.
- Poprawia odzyskiwanie w przypadku błędów połączenia POP3.
- Złagodzono reguły parsowania POP3, aby aplikacja mogła działać z serwerami poczty e-mail, które nie są zgodne z tymi regułami.
Nowe funkcje
- Mapy: dodaje szczegóły i opinie, gdy użytkownik wyszukuje coś w Mapach i klika firmę, aby wyświetlić jej szczegóły.
- Dialer: domyślny czas oczekiwania na ekranie podczas rozmowy jest teraz dłuższy, gdy używasz głośnomówiącego.
- Telefon: dodaje opcję „Pokaż klawiaturę”. / "Ukryj klawiaturę" produkt podczas rozmowy , co ułatwia znalezienie klawiatury DTMF.
- Dodano obsługę zapisywania załączników z wiadomości MMS
- Dodano obsługę markiz w układach.
Zmiany w interfejsie API
Omówienie
- Dodaje adnotacje dla systemów testowych, brak rzeczywistego (nietestowego) interfejsu API zmian.
- Dodaje metodę, która umożliwia procesowi łatwe określanie jego identyfikatora UID.
- Dodano obsługę markiz w układach.
- Dodaje nowe metody określania dopełnienia w widokach. Przydatne, jeśli definiujesz własne podklasy typu
View
. - Dodaje nowe uprawnienia, które umożliwiają aplikacji wysyłanie SMS-ów lub wiadomości push WAP.
- Czyszczenie interfejsu API: usuwa chroniony konstruktor z Obrazy systemowe powiązane z pakietem SDK.
Szczegóły zmiany interfejsu API
Moduł lub funkcja | Zmień opis |
---|---|
Adnotacje dla systemów testowych | |
Dodano adnotację LargeTest . | |
Dodano adnotację MediumTest . | |
Dodano adnotację SmallTest . | |
Umożliw procesowi łatwe poznanie identyfikatora UID. | |
Dodano publiczną metodę myUid() do klasy android.os.Process | |
Dopełnienie w widokach | |
Do klasy android.view.View dodano metodę publiczną getBottomPaddingOffset() . | |
Do klasy android.view.View dodano publiczną metodę getLeftPaddingOffset() . | |
Do klasy android.view.View dodano publiczną metodę getRightPaddingOffset() . | |
Do klasy android.view.View dodano publiczną metodę getTopPaddingOffset() . | |
Do klasy android.view.View dodano metodę publiczną isPaddingOffsetRequired() . | |
Obsługa transparentu | |
Dodano publiczną metodę setMarqueeRepeatLimit(int) do klasy TextView | |
Dodano pole publiczne android.R.attr.marqueeRepeatLimit | |
Nowe uprawnienia | |
Dodano pole publiczne android.Manifest.permission.BROADCAST_SMS | |
Dodano pole publiczne android.Manifest.permission.BROADCAST_WAP_PUSH | |
Oczyszczanie interfejsu API | |
Usunięto chroniony konstruktor java.net.ServerSocket.ServerSocket(java.net.SocketImpl). |