Honeycomb MR1

Oto Twój Android 3.1!

Android 3.1 to przyrostowa wersja platformy, która ulepsza wiele funkcji wprowadzonych w Androidzie 3.0. Jest oparta na tym samym interfejsie zoptymalizowanym pod kątem tabletów i funkcji dostępnych w Androidzie 3.0. Dodaje też kilka nowych możliwości dla użytkowników i deweloperów. Ten dokument zawiera przegląd nowych funkcji i technologii wprowadzonych w Androidzie 3.1. Aby dowiedzieć się więcej o nowych interfejsach API dla programistów, zapoznaj się z informacjami na temat interfejsów API.

Aby uzyskać ogólne informacje o Androidzie 3.0, zobacz Najważniejsze informacje o platformie Androida 3.0.

Nowe funkcje dla użytkowników

Rysunek 1. Ekran główny Androida 3.1.

Ulepszenia interfejsu

Platforma Android 3.1 wprowadza szereg udoskonaleń, aby interfejs użytkownika był bardziej intuicyjny i wydajny.

Przejścia interfejsu są udoskonalone w całym systemie i w standardowych aplikacjach. Animacja Menu z aplikacjami jest zoptymalizowana pod kątem szybszego i płynnego przejścia między listą aplikacji. Dostosowanie koloru, pozycji i tekstu ułatwia widoczność, zrozumienie i używanie elementów interfejsu. Ułatwienia dostępu zostały ulepszone dzięki spójnym sygnałom dźwiękowym w całym interfejsie i nowe ustawienie, które pozwala użytkownikom dostosować interwał przytrzymania dotknięcia do własnych potrzeb.

Nawigacja między 5 ekranami głównymi jest teraz łatwiejsza – wystarczy, że klikniesz przycisk Ekran główny na pasku systemu, aby przejść do ostatnio używanego ekranu. Ustawienia oferują lepszy wgląd w pamięć wewnętrzną, pokazując to miejsce używane przez większy zestaw typów plików.

Łączność akcesoriów USB

Android 3.1 zapewnia szerszą obsługę różnych platform i urządzeń peryferyjnych podłączonych przez USB. Użytkownicy mogą podłączyć wiele typów urządzeń wejściowych (klawiatury, myszy, kontrolery do gier) i aparaty cyfrowe. Aplikacje mogą korzystać z obsługi USB na platformie, aby rozszerzyć połączenia z prawie każdym urządzeniem USB.

Platforma dodaje też obsługę akcesoriów USB, czyli zewnętrznych urządzeń przeznaczonych do podłączania do urządzeń z Androidem jako hostów USB. Gdy dołączysz akcesorium, platforma wyszukuje odpowiednią aplikację i zaoferuje jej uruchomienie. Akcesorium może również wyświetlić użytkownikowi adres URL umożliwiający pobranie odpowiedniej aplikacji, jeśli nie jest ona jeszcze zainstalowana. Użytkownicy mogą korzystać z aplikacji do sterowania akcesoriami z zasilaniem, takimi jak kontrolery robotyki, stacje dokujące, sprzęt diagnostyczny i muzyczny, kioski, czytniki kart i wiele innych.

Funkcje USB platformy zależą od komponentów w sprzęcie urządzenia, dlatego obsługa USB na poszczególnych urządzeniach może się różnić i zależy od ich producentów.

Rysunek 2. Menu Ostatnie aplikacje można teraz rozwijać i przewijać.

Rozwinięto listę ostatnich aplikacji

Aby usprawnić wielozadaniowość i natychmiastowy dostęp wizualny do znacznie większej liczby aplikacji, możesz rozwinąć listę Ostatnie aplikacje. Użytkownicy mogą teraz przewijać listę ostatnio używanych aplikacji w pionie, aby zobaczyć miniatury wszystkich wykonanych zadań i ostatnio używanych aplikacji, a następnie kliknąć miniaturę, aby wrócić do danego zadania.

Widżety z możliwością zmiany rozmiaru ekranu głównego

Użytkownicy mogą teraz zmieniać rozmiar widżetów na ekran główny, używając pasków przeciągania dostarczanych przez system. Użytkownicy mogą rozwijać widżety zarówno w poziomie, jak i w pionie, aby wyświetlać więcej treści. Ta funkcja jest obsługiwana przez każdy z widżetów.

Obsługa zewnętrznych klawiatur i urządzeń wskazujących

Do urządzeń z Androidem użytkownicy mogą teraz podłączyć niemal dowolny typ zewnętrznej klawiatury lub myszy, aby stworzyć podobne środowisko i wydajniej pracować. Do systemu można jednocześnie podłączyć jedno lub więcej urządzeń wejściowych przez USB lub Bluetooth HID, w dowolnej kombinacji. W większości przypadków nie potrzeba specjalnej konfiguracji ani sterowników. Gdy jest podłączonych wiele urządzeń, użytkownicy mogą wygodnie zarządzać aktywną klawiaturą i edytorem IME za pomocą ustawień klawiatury dostępnych na pasku systemowym.

W przypadku urządzeń wskazujących platformę obsługuje większość typów myszy z jednym przyciskiem i opcjonalnie kółkiem przewijania, a także podobne urządzenia, takie jak kulki. Gdy są one połączone, użytkownicy mogą wchodzić w interakcje z interfejsem za pomocą punktów, zaznaczania, przeciągania, przewijania, najeżdżania kursorem i innych standardowych działań.

Obsługa joysticków i padów do gier

Aby platforma była jeszcze lepsza pod względem gier, Android 3.1 obsługuje większość joysticków i padów do gier podłączonych przez USB lub Bluetooth HID.

Na przykład użytkownicy mogą łączyć kontrolery gier PlayStation®3 i Xbox 360® przez USB (ale nie Bluetooth), pady do gier Logitech Dual ActionTM i kije lotnicze albo kontroler wyścigowy w samochodzie. Kontrolery do gier korzystające z zastrzeżonych sieci lub parowania nie są domyślnie obsługiwane, ale ogólnie platforma obsługuje większość joysticków i padów do gier podłączonych do komputera.

Rozbudowana sieć Wi-Fi

Android 3.1 ma rozbudowane funkcje Wi-Fi, dzięki którym użytkownicy i ich aplikacje mogą w pełni korzystać z szybszego dostępu do sieci Wi-Fi w domu, pracy i podróży.

Nowa, bardzo wydajna blokada Wi-Fi umożliwia aplikacjom utrzymywanie wysokiej jakości połączeń Wi-Fi nawet po wyłączeniu ekranu urządzenia. Użytkownicy mogą dzięki temu odtwarzać strumieniowo muzykę, filmy i usługi głosowe przez dłuższy czas, nawet jeśli urządzenie jest bezczynne i ma wyłączony ekran.

Użytkownicy mogą teraz konfigurować serwer proxy HTTP dla każdego punktu dostępu Wi-Fi, przytrzymując punkt dostępu w Ustawieniach. Przeglądarka używa serwera proxy HTTP do komunikacji z siecią przez punkt dostępu, a inne aplikacje również mogą to robić. Platforma umożliwia też tworzenie i przywracanie kopii zapasowych zdefiniowanych przez użytkownika ustawień adresów IP i serwera proxy.

Platforma dodaje obsługę Preferred Network Offload (PNO) – funkcji skanowania w tle, która pozwala oszczędzać energię baterii w przypadkach, gdy sieć Wi-Fi musi być stale dostępna przez dłuższy czas.

Zaktualizowany zestaw standardowych aplikacji

Platforma Android 3.1 zawiera zaktualizowany zestaw standardowych aplikacji zoptymalizowanych do użytku na urządzeniach z większymi ekranami. W sekcjach poniżej opisujemy niektóre nowe funkcje.

Rysunek 3. Menu Szybkie ustawienia w przeglądarce.

Przeglądarka

Aplikacja Internet zawiera wiele nowych funkcji i ulepszeń interfejsu, dzięki którym przeglądanie treści internetowych jest prostsze, szybsze i wygodniejsze.

Interfejs Szybkich ustawień, dostępny z poziomu ustawień przeglądarki, został rozszerzony i zaprojektowany od nowa. Użytkownicy mogą teraz używać elementów sterujących do wyświetlania miniatur otwartych kart i zamykania aktywnej karty, a także korzystać z rozszerzonego menu, które daje natychmiastowy dostęp do ustawień i innych elementów.

Aby zapewnić spójne wrażenia użytkownika, przeglądarka rozszerza obsługę popularnych standardów internetowych, takich jak CSS 3D, animacje i stałe pozycjonowanie CSS, na wszystkie witryny, zarówno na urządzenia mobilne, jak i komputery. Daje też możliwość odtwarzania osadzonych treści wideo w formacie HTML5. Aby ułatwić zarządzanie ulubionymi treściami, użytkownicy mogą teraz zapisywać strony internetowe ze wszystkimi stylami i obrazami do przeglądania w trybie offline. Dla wygody użytkowników witryn Google ulepszony interfejs automatycznego logowania umożliwia szybkie logowanie i zarządzanie dostępem, gdy wielu użytkowników korzysta z jednego urządzenia.

Aby uzyskać najlepszą wydajność, przeglądarka dodaje obsługę wtyczek, które korzystają z renderowania z akceleracją sprzętową. Znacznie ulepszono też działanie funkcji powiększenia, dzięki czemu poruszanie się po stronach internetowych jest szybsze.

Galeria

Aplikacja Galeria obsługuje teraz protokół Picture Transfer Protocol (PTP), dzięki czemu użytkownicy mogą połączyć swoje aparaty przez USB i importować zdjęcia do Galerii jednym dotknięciem. Aplikacja kopiuje też zdjęcia do pamięci lokalnej i wyświetla wskaźnik informujący użytkowników o ilości dostępnego miejsca.

Rysunek 4. Rozmiar widżetów ekranu głównego można teraz zmieniać.

Kalendarz

Siatki kalendarza są większe, aby zwiększyć czytelność i precyzję kierowania dotykowego. Oprócz tego użytkownicy mogą zwiększyć obszar wyświetlania siatek, ukrywając elementy sterujące listy kalendarzy. Zmieniliśmy wygląd elementów sterujących w selektorze dat, dzięki czemu łatwiej je zobaczyć i z nich korzystać.

Kontakty

Aplikacja Kontakty pozwala teraz łatwiej znajdować kontakty przy użyciu wyszukiwania pełnego tekstu. Wyszukiwanie zwraca wyniki ze wszystkich pól przechowywanych dla danego kontaktu.

E-mail

Gdy odpowiadasz na wiadomość HTML lub przekazujesz ją dalej, aplikacja Poczta wysyła teraz zarówno zwykły tekst, jak i treści HTML w postaci wieloczęściowej wiadomości MIME. Dzięki temu wiadomość będzie poprawnie sformatowana dla wszystkich odbiorców. Prefiksy folderów na kontach IMAP można teraz łatwiej definiować i zarządzać. Aby oszczędzać baterię i ograniczać użycie danych komórkowych, aplikacja pobiera teraz z wyprzedzeniem e-maile z serwera tylko wtedy, gdy urządzenie jest połączone z punktem dostępu Wi-Fi.

Zaktualizowany widżet na ekranie głównym daje użytkownikom szybki dostęp do większej liczby e-maili. Użytkownicy mogą klikać ikonę Poczty u góry widżetu, aby przechodzić między etykietami, takimi jak Odebrane, Nieprzeczytane i Oznaczone gwiazdką. Możesz teraz zmieniać rozmiar samego widżetu – zarówno w poziomie, jak i w pionie.

Pomoc dla przedsiębiorstw

Użytkownicy mogą teraz konfigurować serwer proxy HTTP dla każdego połączonego punktu dostępu Wi-Fi. Dzięki temu administratorzy mogą wspólnie z użytkownikami ustawiać nazwę hosta i port serwera proxy oraz pomijać subdomeny. Ta konfiguracja serwera proxy jest używana automatycznie przez przeglądarkę po połączeniu z punktem dostępu Wi-Fi i może być opcjonalnie używana przez inne aplikacje. Kopia zapasowa konfiguracji serwera proxy i adresu IP jest tworzona i przywracana po aktualizacji i resetowaniu systemu.

Aby sprostać potrzebom użytkowników tabletów, platforma zezwala teraz na akceptowanie zasad dotyczących urządzeń „zaszyfrowanej karty pamięci” na urządzeniach z emulowanymi kartami pamięci masowej i szyfrowaną pamięcią podstawową.

Nowe funkcje dla programistów

Platforma Android 3.1 wprowadza ulepszenia i nowe funkcje, które programiści mogą wykorzystać, aby tworzyć zaawansowane i angażujące aplikacje na tablety i inne urządzenia z dużym ekranem.

Otwarty interfejs Accessory API, który umożliwia bezproblemową interakcję z urządzeniami peryferyjnymi

Android 3.1 wprowadza nowy interfejs API do integrowania akcesoriów sprzętowych z aplikacjami działającymi na platformie. Zapewnia on sposób interakcji z szeroką gamą urządzeń peryferyjnych – od kontrolerów robotycznych po sprzęt muzyczny, rowery treningowe i nie tylko.

Interfejs API opiera się na nowym stosie USB (Universal Serial Bus) i wbudowanych w platformę usługach. Platforma ta świadczy usługi wykrywania i identyfikowania podłączonego sprzętu, a także powiadamianie zainteresowanych aplikacji o dostępności sprzętu.

Gdy użytkownik podłącza akcesorium USB, platforma otrzymuje informacje umożliwiające identyfikację, takie jak nazwa produktu, typ akcesorium, producent i wersja. Platforma konfiguruje komunikację z akcesoriami i wykorzystuje uzyskane w ten sposób informacje do powiadamiania i uruchamiania docelowej aplikacji, jeśli taka aplikacja jest dostępna. Opcjonalnie akcesorium może zawierać adres URL, który pozwala użytkownikom znaleźć i pobrać współpracującą z nim aplikację. Te funkcje wykrywania ułatwiają użytkownikom przeprowadzanie pierwszej konfiguracji i zapewniają dostępność odpowiedniej aplikacji do interakcji z podłączonym sprzętem.

Dla deweloperów aplikacji i producentów akcesoriów tryb akcesoriów zapewnia wiele nowych sposobów angażowania użytkowników i tworzenia zaawansowanych funkcji interakcji z podłączonym sprzętem.

Więcej informacji o tworzeniu aplikacji, które współpracują z akcesoriami, znajdziesz w dokumentacji akcesoriów USB.

Interfejs API hosta USB

Android 3.1 zapewnia wbudowaną obsługę platformy dla trybu hosta USB i udostępnia interfejs API, który umożliwia aplikacjom zarządzanie podłączonymi urządzeniami peryferyjnymi. Na urządzeniach obsługujących tryb hosta aplikacje mogą używać tego interfejsu API do identyfikowania połączonych urządzeń, takich jak urządzenia audio, urządzeń komunikacyjnych, central, kamer i innych urządzeń, oraz komunikowanie się z nimi.

Więcej informacji na temat tworzenia aplikacji, które współdziałają z urządzeniami USB, znajdziesz w dokumentacji hosta USB.

Sterowanie urządzeniami za pomocą myszy, joysticka i pada do gier

Android 3.1 rozszerza system zdarzeń wejściowych, aby obsługiwał różne nowe źródła danych wejściowych i zdarzenia ruchu we wszystkich widokach i oknach. Deweloperzy mogą wykorzystać te możliwości, aby umożliwić użytkownikom korzystanie z aplikacji za pomocą myszy, kulek, joysticków, padów do gier i innych urządzeń, a także klawiatury i ekranów dotykowych.

Do wprowadzania danych za pomocą myszy i kulki platforma obsługuje 2 nowe działania zdarzeń ruchu: przewijanie (w poziomie lub w pionie), np. za pomocą kółka przewijania, oraz najechanie kursorem, które raportuje lokalizację myszy, gdy nie są naciśnięte żadne przyciski. Aplikacje mogą obsługiwać te zdarzenia w dowolny sposób.

W przypadku joysticków i padów do gier platforma udostępnia dużą liczbę osi ruchu, które aplikacje mogą wykorzystać z danego źródła sygnału, np. X, Y, Hat X, Kapelusz Y, obrót, przepustnica, nacisk, rozmiar, dotyk, narzędzie, orientacja i inne. W razie potrzeby programiści mogą również definiować osie niestandardowe, aby rejestrować ruch na dodatkowe sposoby. Platforma udostępnia zdarzenia ruchu do aplikacji w formie wsadu, a aplikacje mogą wysyłać zapytania o szczegóły ruchów zawartych w grupie, aby zwiększyć skuteczność i precyzyjną obsługę zdarzeń.

Aplikacje mogą wysyłać zapytania o listę podłączonych urządzeń wejściowych i zakresy ruchu (osie) obsługiwanych przez każde z nich. Aplikacje mogą też obsługiwać wiele zdarzeń wejściowych i ruchu z jednego urządzenia wejściowego. Na przykład aplikacja może używać źródeł zdarzeń myszy, joysticka i myszy z jednego urządzenia wejściowego.

Widżety na ekran główny z możliwością zmiany rozmiaru

Deweloperzy mogą teraz tworzyć widżety na ekranie głównym, których rozmiar można zmieniać w poziomie, w pionie lub w obu tych miejscach. Wystarczy dodać atrybut do deklaracji widżetu, aby zmienić jego rozmiar w poziomie, w pionie lub w obu tych miejscach. Pozwoli to użytkownikom dostosować sposób wyświetlania zawartości widżetu i wyświetlać ich większą część na ekranach głównych.

Interfejs MTP API do integracji z kamerami zewnętrznymi

W Androidzie 3.1 nowy interfejs API MTP (Media Transfer Protocol) pozwala programistom pisać aplikacje, które współpracują bezpośrednio z podłączonymi kamerami i innymi urządzeniami PTP. Nowy interfejs API ułatwia aplikacjom otrzymywanie powiadomień o podłączeniu i usunięciu urządzenia, zarządzanie plikami i pamięcią na tych urządzeniach oraz przenoszenie plików i metadanych na te urządzenia i z nich. Interfejs MTP API implementuje podzbiór specyfikacji PTP (Picture Transfer Protocol) specyfikacji MTP.

Interfejs API RTP do kontroli nad sesjami strumieniowania audio

Android 3.1 udostępnia interfejs API we wbudowanym stosie RTP (Real-time Transport Protocol), którego aplikacje mogą używać do bezpośredniego zarządzania strumieniem danych na żądanie lub interaktywnym strumieniowaniem danych. W szczególności aplikacje obsługujące VOIP, usługi push, rozmowy wideo i strumieniowe przesyłanie dźwięku mogą korzystać z tego interfejsu API, aby inicjować sesje oraz przesyłać i odbierać strumienie danych w dowolnej dostępnej sieci.

Optymalizacje skuteczności

Android 3.1 oferuje szereg optymalizacji wydajności, dzięki którym aplikacje są szybsze i bardziej responsywne. Oto niektóre optymalizacje:

  • Nowa klasa pamięci podręcznej LRU pozwala aplikacjom korzystać z wydajnego buforowania. Aplikacje mogą korzystać z tej klasy, aby skrócić czas przetwarzania i pobierania danych z sieci, a jednocześnie utrzymać rozsądną ilość pamięci przeznaczonej na dane w pamięci podręcznej.
  • Platforma interfejsu obsługuje teraz częściowe unieważnienia w widokach z akceleracją sprzętową, co zwiększa efektywność operacji rysowania w tych widokach.
  • Nowa metoda graficzna – setHasAlpha() – umożliwia aplikacjom wskazywanie, że dana bitmapa jest nieprzezroczysta. Zwiększa to wydajność w przypadku niektórych rodzajów uderzeń i jest szczególnie przydatne w aplikacjach używających map bitowych ARGB_8888.