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ę Androida Studio, może pojawić się okno dialogowe z błędem aktualizacji „W obszarze instalacji wykryto konflikty”. Zignoruj ten błąd i kliknij Anuluj, aby wznowić instalację.

3.0.1 (listopad 2017 r.)

Jest to niewielka aktualizacja Androida Studio 3.0, która zawiera ogólne poprawki błędów i ulepszenia wydajności.

Wtyczka Androida do obsługi Gradle w wersji 3.0.0

Nowa wtyczka Androida do obsługi Gradle zawiera wiele ulepszeń i nowych funkcji, ale przede wszystkim poprawia wydajność kompilacji w przypadku projektów z dużą liczbą modułów. Podczas korzystania z nowej wtyczki w przypadku tych dużych projektów powinny wystąpić te sytuacje:

  • Krótszy czas konfiguracji kompilacji dzięki nowemu opóźnionemu rozwiązywaniu zależności.
  • Rozwiązywanie zależności z uwzględnieniem wariantów tylko w przypadku projektów i wariantów, które tworzysz.
  • Krótszy czas kompilacji przyrostowej w przypadku wprowadzania prostych zmian w kodzie lub zasobach.

Uwaga: te ulepszenia wymagały wprowadzenia istotnych zmian, które powodują, że wtyczka, DSL i interfejsy API działają inaczej. Przejście na wersję 3.0.0 może wymagać zmian w plikach kompilacji i wtyczkach Gradle.

Ta wersja zawiera również:

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

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

Jeśli chcesz przejść na nową wtyczkę, zapoznaj się z tym artykułem: Migracja do wtyczki Androida do obsługi Gradle w wersji 3.0.0.

Obsługa języka Kotlin

Jak ogłosiliśmy na Google I/O 2017, język programowania Kotlin jest teraz oficjalnie obsługiwany na Androidzie. Dlatego w tej wersji Android Studio obsługuje język Kotlin w przypadku tworzenia aplikacji na Androida.

Możesz włączyć Kotlin w projekcie, konwertując plik Java na Kotlin (kliknij Code > Convert Java File to Kotlin File) lub tworząc nowy projekt z włączonym Kotlinem za pomocą kreatora New Project.

Na początek przeczytaj, jak dodać język Kotlin do projektu.

Obsługa funkcji języka Java 8

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

Aby zaktualizować projekt i umożliwić obsługę nowego łańcucha narzędzi języka Java 8, w oknie Struktura projektu (kliknij Plik > Struktura projektu) zmień ustawienia Zgodność źródłaZgodność docelowa na 1.8. Więcej informacji znajdziesz w artykule o korzystaniu z funkcji języka Java 8.

Profiler Androida

Nowy Profiler Androida zastępuje narzędzie Monitor Androida i udostępnia nowy zestaw narzędzi do pomiaru w czasie rzeczywistym wykorzystania procesora, pamięci i sieci przez aplikację. Możesz przeprowadzać śledzenie oparte na próbkach, aby mierzyć czas wykonywania kodu, przechwytywać zrzuty sterty, wyświetlać przydziały pamięci i sprawdzać szczegóły plików przesyłanych przez sieć.

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

Oś czasu zdarzeń u góry okna pokazuje zdarzenia dotknięcia, naciśnięcia klawiszy i zmiany aktywności, dzięki czemu masz więcej kontekstu, aby zrozumieć inne zdarzenia związane z wydajnością na osi czasu.

Uwaga: widok Logcat został przeniesiony do osobnego okna (wcześniej znajdował się w Monitorze Androida, który został usunięty).

Na osi czasu w sekcji przeglądu Profilera Androida kliknij osie czasu CPU, MEMORY lub NETWORK, aby uzyskać dostęp do odpowiednich narzędzi profilera.

CPU Profiler

Program profilujący procesor pomaga analizować wykorzystanie wątków procesora przez aplikację, wywołując próbkę lub ślad procesora z instrumentacją. 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 profilerze procesora.

Memory Profiler

Narzędzie Memory Profiler pomaga wykrywać wycieki pamięci i nadmierne wykorzystanie pamięci, które mogą powodować zacinanie się, zawieszanie, a nawet awarie aplikacji. Wyświetla wykres wykorzystania pamięci przez aplikację w czasie rzeczywistym, umożliwia przechwytywanie zrzutów sterty, wymuszanie odzyskiwania pamięci i śledzenie przydziałów pamięci.

Więcej informacji znajdziesz w przewodniku po profilerze pamięci.

Network Profiler

Profil sieciowy umożliwia monitorowanie aktywności sieciowej aplikacji, sprawdzanie ładunku każdego żądania sieciowego i powracanie do kodu, który wygenerował żądanie sieciowe.

Więcej informacji znajdziesz w przewodniku po Profilerze sieci.

Profilowanie i debugowanie plików APK

Android Studio umożliwia teraz profilowanie i debugowanie dowolnego pakietu APK bez konieczności tworzenia go z projektu Android Studio – o ile pakiet APK został utworzony w sposób umożliwiający debugowanie i masz dostęp do symboli debugowania oraz plików źródłowych.

Aby rozpocząć, na ekranie powitalnym Androida Studio kliknij Profile or debug APK (Profilowanie lub debugowanie pliku APK). Jeśli masz już otwarty projekt, na pasku menu kliknij Plik > Profilowanie lub debugowanie pliku APK. Wyświetla to 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 Javy 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 sprawdzanie systemu plików podłączonego urządzenia i przesyłanie plików między urządzeniem a komputerem. Zastępuje to narzędzie systemu plików dostępne w DDMS.

Aby go otworzyć, kliknij View (Widok) > Tool Windows (Okna narzędzi) > Device File Explorer (Eksplorator plików urządzenia).

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

Obsługa aplikacji błyskawicznych

Nowa obsługa aplikacji natychmiastowych na Androida umożliwia tworzenie aplikacji natychmiastowych 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 pomaga dodać obsługę aplikacji natychmiastowych w istniejącym projekcie. Jeśli na przykład chcesz przekształcić projekt, aby umieścić niektóre klasy w module funkcji aplikacji natychmiastowej, wybierz klasy w oknie Project (Projekt) i kliknij Refactor > Modularize (Przekształć > Zmodularizuj). W wyświetlonym oknie wybierz moduł, do którego mają trafić zajęcia, i kliknij OK.

Gdy zechcesz przetestować aplikację natychmiastową, możesz skompilować i uruchomić moduł aplikacji natychmiastowej na podłączonym urządzeniu, podając adres URL aplikacji natychmiastowej w opcjach uruchamiania konfiguracji: kliknij Uruchom > Edytuj konfiguracje, wybierz moduł aplikacji natychmiastowej, a następnie ustaw adres URL w sekcji Opcje uruchamiania.

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

Moduły Androida Things

Nowe szablony Androida Things w kreatorach Nowy projekt i Nowy moduł, które pomogą Ci rozpocząć tworzenie aplikacji na urządzenia IoT z Androidem.

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

Kreator ikon adaptacyjnych

Studio zasobów graficznych obsługuje teraz grafikę wektorową i umożliwia tworzenie adaptacyjnych ikon programu uruchamiającego na Androida 8.0, a jednocześnie tradycyjnych ikon („starszych”) na starsze urządzenia.

Aby rozpocząć, kliknij prawym przyciskiem myszy folder res w projekcie, a następnie kliknij New > Image Asset (Nowy > Zasób obrazu). W oknie Asset Studio wybierz Ikony aplikacji (adaptacyjne i starsze) jako typ ikony.

Uwaga: aby używać ikon adaptacyjnych, musisz ustawić wartość compileSdkVersion na 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 pomaga dołączać czcionki do aplikacji lub konfigurować projekt w taki sposób, aby pobierać czcionki na urządzenie (jeśli są dostępne). Edytor układu może też wyświetlać podgląd czcionek w układzie.

Aby wypróbować czcionki do pobrania, upewnij się, że na urządzeniu lub 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

Asystent Firebase został zaktualizowany o nowy samouczek dotyczący testowania indeksowania aplikacji. Aby otworzyć Asystenta, wybierz 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 Wyświetl podgląd wyników wyszukiwania, aby sprawdzić, czy Twoje adresy URL wyświetlają się w wynikach wyszukiwania Google.
  • W kroku 3 kliknij Sprawdź, czy nie ma błędów, aby sprawdzić, czy indeksowane obiekty w aplikacji zostały dodane do indeksu treści osobistych.

Asystent linków do aplikacji został zaktualizowany o te nowe funkcje:

  • Dodaj testy adresów URL dla każdego mapowania adresów URL, aby mieć pewność, że filtry intencji obsługują rzeczywiste adresy URL.

    Możesz też ręcznie zdefiniować te testy adresów URL za pomocą tagu <tools:validation> opisanego poniżej.

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

Walidator filtra intencji adresu URL

Android Studio obsługuje teraz specjalny tag w pliku manifestu, który umożliwia testowanie adresów URL filtrów intencji. Są to te same tagi, które może utworzyć dla Ciebie asystent linków do aplikacji.

Aby zadeklarować adres URL testu dla filtra intencji, dodaj element <tools:validation> obok odpowiedniego elementu <intent-filter>. Na przykład:

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

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

Jeśli którykolwiek z adresów URL testu nie przejdzie definicji filtra intencji, pojawi się błąd narzędzia lint. Taki błąd nadal umożliwia tworzenie wariantów debugowania, ale spowoduje przerwanie kompilacji wersji.

Edytor układu

Edytor układu został zaktualizowany i zawiera kilka ulepszeń, m.in.:

  • Nowy układ paska narzędzi i ikony.
  • Zaktualizowany układ w drzewie komponentów.
  • Ulepszone wstawianie widoków metodą przeciągnij i upuść.
  • Nowy panel błędów pod edytorem, który wyświetla wszystkie problemy wraz z sugestiami dotyczącymi ich rozwiązania (jeśli są dostępne).
  • Różne ulepszenia interfejsu użytkownika dotyczące tworzenia aplikacji za pomocą ConstraintLayout, w tym:
    • Nowe wsparcie w tworzeniu barier.
    • Nowa funkcja tworzenia grup: na pasku narzędzi wybierz Wytyczne > Dodaj grupę (wymaga ConstraintLayout w wersji 1.1.0 beta 2 lub nowszej).
    • Nowy interfejs do tworzenia łańcuchów: wybierz kilka widoków, a następnie kliknij prawym przyciskiem myszy i wybierz Łańcuch.

[narzędzie] Layout Inspector

Inspektor układu zawiera ulepszenia, które ułatwiają debugowanie problemów z układami aplikacji, w tym grupowanie właściwości w typowych kategoriach i nową funkcję wyszukiwania w panelach Drzewo widokówWłaściwości.

APK Analyzer

Możesz teraz używać Analizatora APK 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 wczytać pliki mapowania ProGuard, które dodają do przeglądarki DEX funkcje, takie jak:
    • Węzły pogrubione wskazują, że nie należy ich usuwać podczas zmniejszania kodu.
    • Przycisk wyświetlania węzłów usuniętych podczas procesu zmniejszania.
    • Przycisk, który przywraca pierwotne nazwy węzłów w widoku drzewa, które zostały zaciemnione przez ProGuard.
  • Przeglądarka DEX wyświetla teraz szacowany wpływ każdego pakietu, klasy i metody na rozmiar.
  • Nowe opcje filtrowania u góry, które umożliwiają wyświetlanie i ukrywanie pól oraz metod.
  • W widoku drzewa węzły, które są odwołaniami niezdefiniowanymi w pliku DEX, są wyświetlane kursywą.

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

Podgląd kompilatora D8 DEX

Android Studio 3.0 zawiera opcjonalny nowy kompilator DEX o nazwie D8. Zastąpi on kompilator DX, ale już teraz możesz włączyć nowy kompilator D8.

Kompilacja DEX ma bezpośredni wpływ na czas kompilacji aplikacji, .dex rozmiar pliku i wydajność w czasie działania. W porównaniu z obecnym kompilatorem DX nowy kompilator D8 działa szybciej i generuje mniejsze .dex pliki, a przy tym zapewnia taką samą lub lepszą wydajność aplikacji.

Aby wypróbować tę funkcję, ustaw w pliku gradle.properties projektu te wartości:

android.enableD8=true
    

Więcej informacji znajdziesz w poście na blogu o kompilatorze D8.

Repozytorium Maven Google

Android Studio domyślnie korzysta teraz z repozytorium Google Maven zamiast z Menedżera pakietu SDK Androida, aby pobierać aktualizacje biblioteki pomocy Androida, Usług Google Play, Firebase i innych zależności. Ułatwia to aktualizowanie bibliotek, zwłaszcza gdy korzystasz z systemu ciągłej integracji (CI).

Wszystkie nowe projekty domyślnie zawierają repozytorium Google Maven. Aby zaktualizować istniejący projekt, dodaj google() w bloku repositories 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. Skupiliśmy się na innych platformach, ponieważ korzysta z niej bardzo niewielu deweloperów. Jeśli używasz 32-bitowego systemu Windows i planujesz debugować kod natywny, nadal korzystaj z Androida Studio 2.3.
  • Zaktualizowano bazowe IDE do wersji IntelliJ 2017.1.2, która zawiera wiele nowych funkcji z wersji 2016.32017.1, takich jak refaktoryzacja języka Java 8, podpowiedzi dotyczące parametrów, wyróżnianie semantyczne, punkty przerwania, które można przeciągać, natychmiastowe wyniki wyszukiwania i wiele innych.
  • Dodaliśmy wiele nowych kontroli lint.
  • Zobacz też najnowsze aktualizacje emulatora Androida.