Android Studio 3.0 (październik 2017 r.)

Android Studio 3.0.0 to ważna wersja, która zawiera wiele nowych funkcji i ulepszeń.

Użytkownicy systemu macOS: jeśli aktualizujesz starszą wersję Android Studio, może pojawić się okno błędu aktualizacji z komunikatem „Znaleziono pewne konflikty w obszarze instalacji”. Zignoruj ten błąd i kliknij Anuluj, aby wznowić instalację.

3.0.1 (listopad 2017 r.)

To drobna aktualizacja Android Studio 3.0, która zawiera ogólne poprawki błędów i ulepszenia wydajności.

Wtyczka Androida do obsługi Gradle 3.0.0

Nowa wtyczka do Androida do obsługi Gradle zawiera szereg ulepszeń i nowych funkcji, ale przede wszystkim zwiększa wydajność kompilacji w projektach z dużą liczbą modułów. Podczas korzystania z nowego wtyczki w przypadku tych dużych projektów należy pamiętać o tych kwestiach:

  • szybsze konfigurowanie kompilacji dzięki nowemu opóźnionemu rozwiązywaniu zależności;
  • Rozwiązywanie zależności z uwzględnieniem wersjitylko w przypadku projektów i wersji, które kompilujesz.
  • szybsze czasy kompilacji przyrostowej po wprowadzeniu prostych zmian w kodzie lub zasobach;

Uwaga: te ulepszenia wymagały wprowadzenia istotnych zmian, które zakłóciły działanie niektórych funkcji wtyczki, DSL i interfejsów API. Przejście na wersję 3.0.0 może wymagać wprowadzenia zmian w plikach kompilacji i wtyczkach Gradle.

Ta wersja zawiera też:

  • Obsługa Androida 8.0.
  • Obsługa tworzenia osobnych plików APK na podstawie zasobów językowych.
  • Obsługa bibliotek i funkcji języka Java 8 (bez kompilatora Jack).
  • Obsługa biblioteki pomocy Android Test Library 1.0 (Android Test Utility i Android Test Assistant).
  • Zwiększona szybkość kompilacji narzędzi ndk-build i cmake.
  • Zwiększona szybkość synchronizacji Gradle.
  • AAPT2 jest teraz domyślnie włączony.
  • Korzystanie z usługi ndkCompile jest teraz bardziej ograniczone. Zamiast tego powinieneś skompilować kod natywny, który chcesz zapakować do pliku APK, za pomocą CMake lub ndk-build. Więcej informacji znajdziesz w artykule Migracja z ndkbuild.

Więcej informacji o zmianach znajdziesz w informacjach o wersji wtyczki Androida do Gradle.

Jeśli chcesz przejść na nową wersję wtyczki, przeczytaj artykuł Przejście na wtyczkę Androida do obsługi Gradle w wersji 3.0.0.

Obsługa Kotlina

Zgodnie z ogłoszeniem z Google I/O 2017 język programowania Kotlin jest teraz oficjalnie obsługiwany na Androidzie. W tej wersji Android Studio obsługuje język Kotlin w ramach tworzenia aplikacji na Androida.

Kotlina możesz włączyć w projekcie, konwertując plik Java na Kotlina (kliknij Kod > Konwertuj plik Java na plik Kotlina) lub tworząc nowy projekt z użyciem Kreatora nowego projektu.

Na początek dowiedz się, jak dodać Kotlina do projektu.

Obsługa funkcji języka Java 8

Możesz teraz używać niektórych funkcji języka Java 8 i korzystać z bibliotek napisanych w języku Java 8. Jack nie jest już wymagany. Najpierw wyłącz Jack, aby korzystać z ulepszonej obsługi Java 8 wbudowanej w domyślny łańcuch narzędzi.

Aby zaktualizować projekt, aby obsługiwał nową platformę językową Java 8, zaktualizuj Zgodność ze źródłemZgodność z docelowym językiem do wersji 1.8 w oknie Struktura projektu (kliknij Plik > Struktura projektu). Więcej informacji znajdziesz w artykule Korzystanie z funkcji języka Java 8.

Profilator Androida

Nowy profil aplikacji na Androida zastępuje narzędzie Monitorowanie Androida i zawiera nowy zestaw narzędzi do pomiaru wykorzystania procesora, pamięci i sieci przez aplikację w czasie rzeczywistym. Możesz przeprowadzać śledzenie metody na podstawie próbek, aby mierzyć czas wykonywania kodu, tworzyć zrzuty stosu, wyświetlać alokacje pamięci i sprawdzać szczegóły plików przesyłanych przez sieć.

Aby go otworzyć, kliknij Widok > Okna narzędziowe > Profiler Androida (lub kliknij Android Profiler na pasku narzędzi).

Czasowa linia zdarzeń u góry okna zawiera zdarzenia dotykowe, wciśnięcia klawiszy i zmiany aktywności, dzięki czemu łatwiej zrozumiesz inne zdarzenia dotyczące skuteczności na osi czasu.

Uwaga: widok Logcat również został przeniesiony do osobnego okna (wcześniej znajdował się w Android Monitor, który został usunięty).

Na osi czasu podglądu w profilu Androida kliknij PROCESOR, PAMIĘĆ lub SIEĆ, aby uzyskać dostęp do odpowiednich narzędzi profilowania.

Program profilujący procesora

Profil narzędzia CPU pomaga analizować wykorzystanie wątku procesora przez aplikację poprzez wywołanie próbki lub zinstrumentowanego śledzenia procesora. Następnie możesz rozwiązywać problemy z wydajnością procesora, korzystając z różnych widoków danych i filtrów.

Więcej informacji znajdziesz w przewodniku po narzędziu CPU Profiler.

Program profilujący pamięci

Narzędzie do profilowania pamięci pomaga wykrywać wycieki pamięci i jej wydolność, które mogą powodować zacinanie, zawieszanie się, a nawet awarie aplikacji. Pokazuje on w czasie rzeczywistym wykres wykorzystania pamięci przez aplikację. Umożliwia robienie zrzutu stosu, wymuszanie czyszczenia pamięci i śledzenie przydziałów pamięci.

Więcej informacji znajdziesz w przewodniku po narzędziu Profilerator pamięci.

Program profilujący sieci

Program profilujący sieci umożliwia monitorowanie aktywności aplikacji w sieci, badanie ładunku każdego żądania sieciowego oraz łączenie z kodem, który wygenerował żądanie sieciowe.

Więcej informacji znajdziesz w przewodniku po narzędziu Network Profiler.

Profilowanie i debugowanie plików APK

Android Studio umożliwia teraz profilowanie i debugowanie dowolnego pliku APK bez konieczności kompilowania go z projektu w Android Studio, o ile plik APK został skompilowany w celu włączenia debugowania i masz dostęp do plików źródłowych i symboli debugowania.

Aby rozpocząć, na ekranie powitalnym Android Studio kliknij Profilowanie lub debugowanie pliku APK. Jeśli masz już otwarty projekt, kliknij Plik > Profil lub debuguj plik APK na pasku menu. Wyświetla rozpakowane pliki APK, ale nie dekompiluje kodu. Aby prawidłowo dodawać punkty przerwania i wyświetlać zrzuty stosu, musisz dołączyć pliki źródłowe Java i symbole do debugowania kodu natywnego.

Więcej informacji znajdziesz w artykule Profilowanie i debugowanie gotowych plików APK.

Device File Explorer

Nowy Eksplorator plików na urządzeniu umożliwia sprawdzenie systemu plików podłączonego urządzenia i przeniesienie plików między urządzeniem a komputerem. Zastępuje to narzędzie do obsługi systemu plików dostępne w DMS.

Aby go otworzyć, kliknij Widok > Okna narzędziowe > Eksplorator plików na urządzeniu.

Więcej informacji znajdziesz w przewodniku po Eksploratorze plików urządzenia.

Obsługa aplikacji błyskawicznych

Nowe wsparcie dla aplikacji natychmiastowych na Androida umożliwia tworzenie takich aplikacji w projekcie za pomocą 2 nowych typów modułów: modułów aplikacji natychmiastowych i modułów funkcji (wymagają one zainstalowania pakietu SDK do tworzenia aplikacji natychmiastowych).

Android Studio zawiera też nowe działanie refaktoryzacji modułowej, które ułatwia dodanie obsługi aplikacji błyskawicznych w dotychczasowym projekcie. Jeśli na przykład chcesz przerobić projekt, aby umieścić niektóre klasy w module funkcji aplikacji błyskawicznej, wybierz te klasy w oknie Projekt i kliknij Refactor > Modularize (Refaktoryzacja > Modularyzacja). W wyświetlonym oknie wybierz moduł, do którego mają trafić zajęcia, i kliknij OK.

Gdy będziesz gotowy do przetestowania swojej aplikacji błyskawicznej, możesz utworzyć i uruchomić moduł aplikacji błyskawicznej na połączonym urządzeniu, podając adres URL aplikacji błyskawicznej w opcjach konfiguracji uruchomienia: wybierz Uruchom > Edytuj konfiguracje, wybierz moduł aplikacji błyskawicznej, a następnie podaj adres URL w sekcji Opcje uruchamiania.

Więcej informacji znajdziesz w artykule Aplikacje błyskawiczne na Androida.

Moduły Android Things

Nowe szablony Android Things w kreatorze nowego projektu i nowego modułu, które pomogą Ci rozpocząć tworzenie aplikacji na urządzenia IoT z Androidem.

Więcej informacji znajdziesz w artykule o tworzeniu projektu Android Things.

Kreator ikon adaptacyjnych

Image Asset Studio obsługuje teraz wektory do rysowania i umożliwia tworzenie adaptacyjnych ikon na ekranie startowym dla Androida 8.0, a jednocześnie tradycyjnych ikon („starszych” ikon) dla starszych urządzeń.

Aby rozpocząć, kliknij prawym przyciskiem myszy folder res w projekcie, a potem kliknij Nowy > Zasób z obrazem. W oknie Asset Studio wybierz Ikony menu (adaptacyjne i stare) jako typ ikony.

Uwaga: aby korzystać z ikon adaptacyjnego programu uruchamiającego, musisz ustawić compileSdkVersion na wartość 26 lub wyższą.

Więcej informacji znajdziesz w artykule Ikony adaptacyjne.

Obsługa zasobów czcionek

Aby obsługiwać nowe zasoby czcionek w Androidzie 8.0, Android Studio zawiera selektor zasobów czcionek, który ułatwia grupowanie czcionek w aplikacji lub konfigurowanie projektu w celu pobrania czcionek na urządzenie (jeśli są dostępne). Edytor układu umożliwia też podgląd czcionek w układzie.

Aby wypróbować czcionki do pobrania, sprawdź, czy na urządzeniu lub w emulatorze są zainstalowane Usługi Google Play w wersji 11.2.63 lub nowszej. Więcej informacji znajdziesz w artykule Czcionki do pobrania.

Asystent indeksowania aplikacji Firebase

W Assistant Firebase pojawił się nowy samouczek, który pozwala przetestować indeksowanie aplikacji. Aby otworzyć Asystenta, kliknij Narzędzia > Firebase. Następnie wybierz Indeksowanie aplikacji > Testuj indeksowanie aplikacji.

Samouczek zawiera nowe przyciski do testowania indeksowania treści publicznych i osobistych:

  • W kroku 2 kliknij Podgląd wyników wyszukiwania, aby sprawdzić, czy adresy URL wyświetlają się w wynikach wyszukiwania Google.
  • Na kroku 3 kliknij Sprawdź błędy, aby sprawdzić, czy indeksowalne obiekty w aplikacji zostały dodane do indeksu treści osobistych.

Do Asystenta linków aplikacji dodaliśmy te nowe funkcje:

  • Dodaj testy adresów URL dla każdego mapowania adresów URL, aby mieć pewność, że filtry intencji będą działać prawidłowo w przypadku rzeczywistych adresów URL.

    Możesz też zdefiniować te testy adresów URL ręcznie, używając tagu <tools:validation>, który opisujemy poniżej.

  • Utwórz plik Digital Asset Links z odpowiednim wpisem obiektu, aby obsługiwać Google Smart Lock, a następnie dodaj odpowiedni tag asset_statements <meta-data> do pliku manifestu.

Walidator filtra intencji adresu URL

Android Studio obsługuje teraz w pliku manifestu specjalny tag, który umożliwia przetestowanie adresów URL filtrów intencji. To te same tagi, które Asystent linków aplikacji może dla Ciebie utworzyć.

Aby zadeklarować testowy adres URL filtra intencji, dodaj element <tools:validation> obok odpowiadającego mu elementu <intent-filter>. Na przykład:

      <activity ...>
          <intent-filter>
              ...
          </intent-filter>
          <tools:validation testUrl="https://www.example.com/recipe/1138" />
      </activity>
    
    

Pamiętaj, aby w tagu <manifest> umieścić też xmlns:tools="http://schemas.android.com/tools".

Jeśli którykolwiek z testowych adresów URL nie spełnia definicji filtra intencji, pojawi się błąd lint. Taki błąd nadal umożliwia tworzenie wersji debugowania, ale spowoduje błąd w wersjach publikowanych.

Edytor układu

Wprowadziliśmy w edytorze układów kilka ulepszeń, między innymi:

  • Nowy układ i ikony paska narzędzi.
  • Zaktualizowano układ w drzewie komponentów.
  • Poprawiono wstawianie widoku metodą „przeciągnij i upuść”.
  • Nowy panel błędów pod edytorem, który zawiera wszystkie problemy ze sugestiami dotyczącymi ich rozwiązania (jeśli są dostępne).
  • Różne ulepszenia interfejsu użytkownika dotyczące tworzenia za pomocą ConstraintLayout, w tym:
    • Nowa pomoc w tworzeniu barier.
    • Nowa obsługa tworzenia grup: na pasku narzędzi wybierz Wytyczne > Dodaj grupę (wymaga ConstraintLayout 1.1.0 beta 2 lub nowszej wersji).
    • Nowe UI do tworzenia łańcuchów: zaznacz kilka widoków, a potem kliknij prawym przyciskiem myszy i wybierz Łańcuch.

Inspektor układu

Inspektor układu zawiera ulepszenia, które ułatwiają debugowanie problemów z układem aplikacji, m.in. grupowanie właściwości w kategorie wspólne i nowe funkcje wyszukiwania w panelach Drzewo widokuWłaściwości.

Analizator plików APK

Teraz możesz używać narzędzia APK Analyzer z poziomu wiersza poleceń za pomocą narzędzia apkanalyzer.

Zaktualizowaliśmy też narzędzie APK Analyzer, wprowadzając te ulepszenia:

  • W przypadku plików APK utworzonych za pomocą ProGuard możesz wczytywać pliki mapowania ProGuard, które dodają funkcje do przeglądarki DEX, takie jak:
    • Węzły pogrubione, aby wskazać, że węzły nie powinny być usuwane podczas zmniejszania kodu.
    • Przycisk wyświetlania węzłów, które zostały usunięte podczas procesu kurczenia.
    • Przycisk przywracający oryginalne nazwy węzłów w widoku drzewa, które zostały zaciemnione przez ProGuard.
  • Narzędzie DEX Viewer wyświetla teraz szacowany wpływ rozmiaru każdego pakietu, klasy i metody.
  • Nowe opcje filtrowania u góry służące do wyświetlania i ukrywania pól oraz metod.
  • W widoku drzewa węzły, które są odwołaniami nie zdefiniowanymi w pliku DEX, są wyświetlane kursywą.

Więcej informacji znajdziesz w artykule Analizowanie kompilacji za pomocą APK Analyzer.

Podgląd kompilatora D8 DEX

Android Studio 3.0 zawiera opcjonalny nowy kompilator DEX o nazwie D8. Ostatecznie zastąpi on kompilator DX, ale już teraz możesz zacząć używać nowego kompilatora D8.

Kompilacja DEX bezpośrednio wpływa na czas kompilacji aplikacji, rozmiar pliku .dex i wydajność środowiska wykonawczego. W porównaniu z obecnym kompilatorem DX kompilator D8 działa szybciej i generuje mniejsze pliki .dex, a za to zapewnia taką samą lub lepszą wydajność aplikacji w czasie działania.

Aby to wypróbować, w pliku gradle.properties projektu ustaw:

android.enableD8=true
    

Więcej informacji znajdziesz w poście na blogu na temat kompilatora D8.

Repozytorium Maven Google

Android Studio domyślnie korzysta teraz z repozytorium Google Maven, zamiast korzystać z Menedżera pakietów Android SDK do pobierania aktualizacji Biblioteki pomocy Androida, Usług Google Play, Firebase oraz innych zależności. Ułatwia to aktualizowanie bibliotek, zwłaszcza w przypadku korzystania z systemu ciągłej integracji (CI).

Wszystkie nowe projekty domyślnie zawierają teraz repozytorium Google Maven. Aby zaktualizować istniejący projekt, dodaj google() w bloku repositories w pliku build.gradle najwyższego poziomu:

      allprojects {
          repositories {
              google()
          }
      }
    
    

Więcej informacji o repozytorium Maven Google znajdziesz tutaj.

Inne zmiany

  • Debugowanie natywne w Android Studio nie obsługuje już 32-bitowego systemu Windows. Zdecydowaliśmy się skupić na innych platformach, ponieważ ta platforma jest używana przez bardzo niewielu deweloperów. Jeśli używasz 32-bitowego systemu Windows i chcesz debugować kod natywny, nadal używaj Android Studio 2.3.
  • Uaktualniliśmy podstawowe środowisko IDE do wersji IntelliJ 2017.1.2, która zawiera wiele nowych funkcji z wersji 2016.3 i 2017.1, takich jak refaktoryzacja języka Java 8, podpowiedzi parametrów, podświetlenie semantyczne, przeciągane punkty przerwania, natychmiastowe wyniki wyszukiwania i wiele innych.
  • Dodano wiele nowych sprawdzania lint.
  • Sprawdź też najnowsze aktualizacje emulatora Androida.