Android Studio 3.6 (luty 2020 r.)

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

Dziękujemy też wszystkim członkom społeczności, którzy pomogli nam w tej aktualizacji.

3.6.3 (kwiecień 2020 r.)

Ta niewielka aktualizacja zawiera różne poprawki błędów. Aby zobaczyć listę istotnych poprawek błędów, przeczytaj odpowiedni post na blogu z aktualizacjami wersji.

3.6.2 (marzec 2020 r.)

Ta niewielka aktualizacja zawiera różne poprawki błędów. Aby zobaczyć listę istotnych poprawek błędów, przeczytaj odpowiedni post na blogu z aktualizacjami wersji.

3.6.1 (luty 2020 r.)

Ta niewielka aktualizacja zawiera różne poprawki błędów. Aby zobaczyć listę istotnych poprawek błędów, przeczytaj odpowiedni post na blogu z aktualizacjami wersji.

Narzędzia do projektowania

Ta wersja Android Studio zawiera aktualizacje kilku narzędzi do projektowania, w tym edytora układu i menedżera zasobów.

Podzielony widok i powiększenie w edytorach projektów

Widok podzielony wyświetla jednocześnie widok projektu i tekstu

Ta wersja zawiera te aktualizacje edytorów projektowania wizualnego:

  • Edytorzy projektów, np. Edytor układu i Edytor nawigacji, oferują teraz widok Split, który umożliwia jednoczesne wyświetlanie widoków ProjektKod interfejsu użytkownika. W prawym górnym rogu okna edytora znajdują się teraz 3 przyciski: wyświetlać ikony. do przełączania opcji wyświetlania:

    • Aby włączyć widok podzielony, kliknij ikonę Podziel.ikona widoku podzielonego
    • Aby włączyć widok kodu źródłowego XML, kliknij ikonę Źródło.ikona widoku źródła
    • Aby włączyć widok projektu, kliknij ikonę Projekt.ikona widoku projektu
  • Elementy sterujące służące do powiększania i przesuwania w edytorach projektów zostały przeniesione do pływającego panelu w prawym dolnym rogu okna edytora.

Więcej informacji znajdziesz w artykule Tworzenie interfejsu użytkownika za pomocą edytora układu.

Karta zasobu Selektor kolorów

Aby ułatwić Ci szybkie aktualizowanie wartości zasobów kolorów w aplikacji, gdy używasz selektora kolorów w pliku XML lub narzędzi projektowych, IDE automatycznie wypełnia wartości zasobów kolorów.

Selektor kolorów z wypełnionymi wartościami kolorów

Menedżer zasobów

Menedżer zasobów zawiera te zmiany:

  • Menedżer zasobów obsługuje teraz większość typów zasobów.
  • Podczas wyszukiwania zasobu Menedżer zasobów wyświetla teraz wyniki ze wszystkich modułów projektu. Wcześniej wyszukiwania zwracały wyniki tylko z wybranego modułu.
  • Przycisk filtra umożliwia wyświetlanie zasobów z lokalnych modułów zależnych, bibliotek zewnętrznych i platformy Android. Możesz też użyć filtra, aby wyświetlić atrybuty motywu.
  • Teraz możesz zmieniać nazwy zasobów podczas importowania, klikając pole tekstowe nad zasobem.

Więcej informacji znajdziesz w artykule Zarządzanie zasobami interfejsu aplikacji za pomocą Menedżera zasobów.

Aktualizacje wtyczki Androida do obsługi Gradle

Najnowsza wersja wtyczki Android Gradle zawiera wiele ulepszeń, w tym optymalizacje dotyczące szybkości kompilacji, obsługę wtyczki Maven publishing i obsługę View Binding. Więcej informacji znajdziesz w pełnych informacjach o wersji.

Wyświetlanie powiązania

Powiązanie widoku ułatwia pisanie kodu, który wchodzi w interakcję z widokami, generując klasę powiązania dla każdego pliku XML układu. Te klasy zawierają bezpośrednie odwołania do wszystkich widoków, które mają identyfikator w odpowiednim układzie.

Ponieważ zastępuje ona funkcję findViewById(), wiązanie widoku eliminuje ryzyko wyjątków związanych z wskaźnikiem null wynikających z nieprawidłowego identyfikatora widoku.

Aby włączyć wiązanie widoku, musisz użyć wtyczki Android Gradle w wersji 3.6.0 lub nowszej i umieścić w pliku build.gradle każdego modułu następujące informacje:

Groovy

  android {
      buildFeatures.viewBinding = true
  }
  

Kotlin

  android {
      buildFeatures.viewBinding = true
  }
  

Apply Changes

Możesz teraz dodać klasę, a potem wdrożyć zmiany kodu w uruchomionej aplikacji, klikając Zastosuj zmiany kodu lub Zastosuj zmiany i ponowne uruchomienie aktywności .

Więcej informacji o różnicach między tymi 2 działaniami znajdziesz w sekcji Stosowanie zmian.

Opcja menu Refactor do włączenia obsługi aplikacji błyskawicznych

Po utworzeniu projektu aplikacji możesz w dowolnym momencie natychmiast włączyć moduł podstawowy w ten sposób:

  1. Otwórz panel Projekt, klikając Widok > Okna narzędzi > Projekt na pasku menu.
  2. Kliknij prawym przyciskiem myszy moduł podstawowy (zazwyczaj o nazwie „app”) i wybierz Refactor > Enable Instant Apps Support (Refactor > Włącz obsługę aplikacji błyskawicznych).
  3. W wyświetlonym oknie wybierz moduł podstawowy z menu.
  4. Kliknij OK.

Uwaga: z kreatora Tworzenie nowego projektu została usunięta opcja natychmiastowego włączenia modułu aplikacji podstawowej.

Więcej informacji znajdziesz w artykule Omówienie Google Play Instant.

Odszyfrowanie kodu bajtowego klasy i metody w APK Analyzer

Jeśli używasz APK Analyzer do sprawdzania plików DEX, możesz odszyfrować bajtowy kod klasy i metody w ten sposób:

  1. Na pasku menu kliknij Utwórz > Przeanalizuj APK.
  2. W wyświetlonym oknie przejdź do pliku APK, który chcesz sprawdzić, i go wybierz.
  3. Kliknij Otwórz.
  4. W analizatorze APK wybierz plik DEX, który chcesz sprawdzić.
  5. W przeglądarce plików DEX załaduj plik mapowania ProGuard dla analizowanego pliku APK.
  6. Kliknij prawym przyciskiem myszy klasę lub metodę, którą chcesz sprawdzić, i kliknij Pokaż kod bajtowy.

Narzędzia natywne

Te aktualizacje umożliwiają tworzenie aplikacji natywnych (C/C++) w Android Studio.

Obsługa Kotlina

Te funkcje NDK w Android Studio, które były wcześniej obsługiwane w języku Java, są teraz obsługiwane również w Kotlinie:

  • Przejdź z deklaracji JNI do odpowiadającej jej funkcji implementacji w C/C++. Aby wyświetlić to mapowanie, najedź kursorem na znacznik elementu C lub C++ w pobliżu numeru wiersza w zarządzanym pliku kodu źródłowego.

  • automatycznie tworzyć funkcję implementacji zastępczej dla deklaracji JNI; Najpierw zdefiniuj deklarację JNI, a potem wpisz „jni” lub nazwę metody w pliku C/C++, aby ją aktywować.

  • Nieużywane funkcje implementacji natywnej są wyróżnione w kodzie źródłowym jako ostrzeżenie. Deklaracje JNI z brakującymi implementacjami są również wyróżniane jako błędy.

  • Gdy zmienisz nazwę (przepiszesz) natywnej funkcji implementacji, wszystkie odpowiednie deklaracje JNI zostaną zaktualizowane. Zmień nazwę deklaracji JNI, aby zaktualizować funkcję implementacji natywnej.

  • Sprawdzanie podpisu w przypadku implementacji JNI z implicytnym wiązaniem.

Inne ulepszenia JNI

Edytor kodu w Android Studio obsługuje teraz bardziej płynny proces tworzenia kodu JNI, w tym ulepszone podpowiedzi typów, autouzupełnianie, inspekcje i refaktoryzację kodu.

Ponowne wczytywanie pliku APK dla bibliotek natywnych {:#3.6-reload-apk}

Nie musisz już tworzyć nowego projektu, gdy plik APK w Twoim projekcie jest aktualizowany poza IDE. Android Studio wykrywa zmiany w pliku APK i daje możliwość ponownego zaimportowania pliku.

Dołącz źródła pliku APK tylko w języku Kotlin

Podczas profilowania i debugowania gotowych plików APK możesz teraz dołączać zewnętrzne źródła plików APK tylko z Kotlinem. Więcej informacji znajdziesz w artykule Dołączanie źródeł kodu Kotlin lub Javy.

Wykrywanie wycieków w narzędziu Memory Profiler

Podczas analizowania zrzutu stosu w profilu pamięci możesz teraz filtrować dane z profilowania, które według Android Studio mogą wskazywać na wycieki pamięci w przypadku instancji ActivityFragment w aplikacji.

Typy danych wyświetlanych przez filtr:

  • instancji Activity, które zostały zniszczone, ale nadal są używane;
  • Fragment, które nie mają prawidłowej wartości FragmentManager, ale są nadal używane.

Dołącz źródła pliku APK tylko w języku Kotlin

Podczas profilowania i debugowania gotowych plików APK możesz teraz dołączać zewnętrzne źródła plików APK tylko z Kotlinem. Więcej informacji znajdziesz w artykule Dołączanie źródeł kodu Kotlin lub Javy.

Wykrywanie wycieków w narzędziu Memory Profiler

Podczas analizowania zrzutu stosu w profilu pamięci możesz teraz filtrować dane z profilowania, które według Android Studio mogą wskazywać na wycieki pamięci w przypadku instancji ActivityFragment w aplikacji.

Typy danych wyświetlanych przez filtr:

  • instancji Activity, które zostały zniszczone, ale nadal są używane;
  • Fragment, które nie mają prawidłowego FragmentManager, ale są nadal używane.

W niektórych sytuacjach, takich jak te, filtr może dać fałszywe wyniki:

  • Fragment został utworzony, ale nie został jeszcze użyty.
  • Fragment jest przechowywane w pamięci podręcznej, ale nie w ramach FragmentTransaction.

Aby skorzystać z tej funkcji, najpierw zrób zrzut stosu lub zaimportuj plik zrzutu stosu do Android Studio. Aby wyświetlić fragmenty i czynności, które mogą powodować wycieki pamięci, w panelu zrzutu stosu w profilu pamięci zaznacz pole wyboru Wycieki aktywności/fragmentów.

Profilowanie: wykrywanie wycieków pamięci

Filtrowanie zrzutu stosu pod kątem wycieków pamięci.

Emulatory

Android Studio 3.6 pozwala korzystać z kilku aktualizacji zawartych w emulatorze Androida 29.2.7 lub nowszym, jak opisano poniżej.

Ulepszona obsługa lokalizacji

Emulator Androida w wersji 29.2.7 lub nowszej zapewnia dodatkową obsługę emulacji współrzędnych GPS i informacji o trasie. Gdy otworzysz sekcji „Emulatory” Rozszerzone opcje sterowania, opcje na karcie „Lokalizacja” są teraz uporządkowane na 2 kartach: Pojedyncze punktyŚcieżki.

Pojedyncze punkty

Na karcie Pojedyncze punkty możesz użyć widoku internetowego Map Google, aby wyszukiwać punkty zainteresowania tak jak w Mapach Google na telefonie lub w przeglądarce. Gdy wyszukujesz lub klikasz lokalizację na mapie, możesz ją zapisać, wybierając opcję Zapisz punkt na dole mapy. Wszystkie zapisane lokalizacje są wyświetlane po prawej stronie okna Rozszerzone ustawienia.

Aby ustawić lokalizację emulatorów na wybraną na mapie, kliknij przycisk Ustaw lokalizację w prawym dolnym rogu okna Rozszerzone opcje sterowania.

Karta Pojedyncze punkty w rozszerzonych ustawieniach emulatora..

Trasy

Podobnie jak karta Pojedyncze punkty karta Trasa zawiera widok internetowy Map Google, którego możesz użyć do utworzenia trasy między co najmniej 2 miejscami. Aby utworzyć i zapisać trasę:

  1. W widoku mapy użyj pola tekstowego, aby wyszukać pierwsze miejsce docelowe na trasie.
  2. Wybierz lokalizację w wynikach wyszukiwania.
  3. Kliknij przycisk Przejdź.
  4. Wybierz punkt początkowy trasy na mapie.
  5. (Opcjonalnie) Kliknij Dodaj miejsce docelowe, aby dodać kolejne przystanki na trasie.
  6. Zapisz trasę, klikając Zapisz trasę w widoku mapy.
  7. Podaj nazwę trasy i kliknij Zapisz.

Aby symulować działanie uruchamianego emulatora na podstawie zapisanej trasy, wybierz ją na liście Zapisane trasy i w prawym dolnym rogu okna Rozszerzone opcje sterowania kliknij Odtwórz trasę. Aby zatrzymać symulację, kliknij Zatrzymaj trasę.

Karta Trasy w rozszerzonych ustawieniach emulatora.

Aby stale symulować działanie emulatora zgodnie ze wskazaną trasą, włącz przełącznik obok opcji Powtórz odtwarzanie. Aby zmienić szybkość, z jaką emulator będzie podążać za określoną trasą, wybierz opcję w menu Szybkość odtwarzania.

Obsługa wielu wyświetlaczy

Emulator Androida umożliwia teraz wdrażanie aplikacji na wiele wyświetlaczy, które obsługują wymiary dostosowane do potrzeb użytkownika. Możesz też testować aplikacje, które obsługują wiele okienwiele wyświetlaczy. Podczas działania urządzenia wirtualnego możesz dodać maksymalnie 2 dodatkowe wyświetlacze w ten sposób:

  1. Otwórz Ustawienia zaawansowane i otwórz kartę Wyświetlacze.

  2. Aby dodać kolejny wyświetlacz, kliknij Dodaj dodatkowy wyświetlacz.

  3. W menu Wyświetlacze dodatkowe wykonaj jedną z tych czynności:

  4. Wybierz jeden z gotowych formatów obrazu.

  5. Wybierz Niestandardowy i ustaw wysokość, szerokość i dpi dla wyświetlacza niestandardowego.

  6. (Opcjonalnie) Kliknij Dodaj drugi wyświetlacz, aby dodać trzeci wyświetlacz.

  7. Kliknij Zastosuj zmiany, aby dodać określone wyświetlacze do działającego urządzenia wirtualnego.

Dodaj kartę Wyświetlanie na karcie Rozszerzone elementy sterujące emulatora.

Nowe urządzenia wirtualne i szablony projektów na system operacyjny Android Automotive

Podczas tworzenia nowego projektu w Android Studio możesz teraz wybrać jeden z 3 szablonów na karcie Motoryzacja w kroku kreatora Tworzenie nowego projektu: Brak aktywności, Usługa multimedialnaUsługa do obsługi wiadomości. W przypadku istniejących projektów możesz dodać obsługę urządzeń z Androidem Automotive, wybierając na pasku menu Plik > Nowy > Nowy moduł, a następnie Moduł samochodowy. Następnie kreator Tworzenie nowego modułu przeprowadzi Cię przez proces tworzenia nowego modułu za pomocą jednego ze szablonów projektu Androida Automotive.

Wybieranie szablonu projektu Android Automotive.

Możesz też utworzyć urządzenie wirtualne z Androidem (AVD) na potrzeby urządzeń z systemem operacyjnym Android Automotive. Aby to zrobić, na karcie Motoryzacja w kreatorze Konfiguracja urządzenia wirtualnego wybierz jedną z tych opcji.

  1. Polestar 2: utwórz AVD, który emuluje jednostkę główną Polestar 2.
  2. Samochodowóz (1024p w orientacji poziomej): utwórz AVD dla uniwersalnych urządzeń z Androidem Automotive o wymiarach 1024 x 768 pikseli.

Wybieranie wirtualnego urządzenia z Androidem Automotive.

Pobieranie pakietu SDK z możliwością wznowienia

Podczas pobierania komponentów i narzędzi SDK za pomocą Menedżera pakietu SDK Android Studio umożliwia teraz wznowienie przerwanych (np. z powodu problemu z siecią) pobierania zamiast jego ponownego uruchamiania od początku. To ulepszenie jest szczególnie przydatne w przypadku dużych plików do pobrania, takich jak emulator Androida czy obrazy systemowe, gdy połączenie z internetem jest niestabilne.

Jeśli w tle jest uruchomione zadanie pobierania pakietu SDK, możesz je wstrzymać lub wznowić, korzystając z elementów sterujących na pasku stanu.

zadanie pobierania w tle na pasku stanu z nowymi opcjami, które umożliwiają wstrzymanie i wznowienie pobierania;

zadanie pobierania w tle na pasku stanu z nowymi opcjami, które umożliwiają wstrzymanie i wznowienie pobierania;

Wycofanie obsługi Win32

Po grudniu 2019 r. nie będzie już można pobierać aktualizacji wersji 32-bitowej Android Studio na Windows. W grudniu 2020 r. przestaniemy też obsługiwać tę wersję. Nadal możesz korzystać z Android Studio. Aby jednak otrzymywać dodatkowe aktualizacje, zaktualizuj stanowisko robocze do 64-bitowej wersji systemu Windows.

Więcej informacji znajdziesz w artykule Wycofanie 32-bitowej wersji systemu Windows.

Nowa opcja optymalizacji czasu synchronizacji Gradle

W poprzednich wersjach Android Studio pobierało listę wszystkich zadań Gradle podczas synchronizacji Gradle. W przypadku dużych projektów pobieranie listy zadań może spowolnić proces synchronizacji.

Aby poprawić wydajność synchronizacji Gradle, kliknij Plik > Ustawienia > Eksperymentalne i wybierz Nie twórz listy zadań Gradle podczas synchronizacji Gradle.

Gdy włączysz tę opcję, Android Studio pominie tworzenie listy zadań podczas synchronizacji, co pozwoli na szybsze ukończenie synchronizacji Gradle i poprawi szybkość reakcji interfejsu. Pamiętaj, że gdy IDE pominie kompilowanie listy zadań, listy zadań w panelu Gradle są puste, a automatyczne uzupełnianie nazw zadań w plikach kompilacji nie działa.

Nowa lokalizacja przełącznika trybu offline w Gradle

Aby włączyć lub wyłączyć tryb offline Gradle, na pasku menu kliknij Widok > Okna narzędzia > Gradle. Następnie u góry okna Gradle kliknij Przełącz tryb offline przycisk Gradle offline w panelu Gradle..

IntelliJ IDEA 2019.2

Główne środowisko programistyczne Android Studio zostało zaktualizowane o ulepszenia z IntelliJ IDEA w wersji 2019.2.

Więcej informacji o ulepszeniach z innych wersji IntelliJ, które są uwzględnione w wersji 2019.2, znajdziesz na tych stronach:

Współtwórcy społeczności

Dziękujemy wszystkim członkom społeczności, którzy pomogli nam znaleźć błędy i wskazali sposoby na ulepszenie Android Studio 3.6. Szczególnie dziękujemy tym użytkownikom, którzy zgłosili błędy:

  • Albert Lo
  • Alexey Rott
  • Andrea Leganza
  • Benedikt Kolb
  • César Puerta
  • Curtis Kroetsch
  • Damian Wieczorek
  • Dan Lew
  • David Burström
  • Deepanshu
  • Egor Andreevici
  • Eli Graber
  • Emin Kokalari
  • Evan Tatarka
  • František Nagy
  • Greg Moens
  • Hannes Achleitner
  • Hans Petter Eide
  • Henning Bunk
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Joe Rogers
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • Luke Fielke
  • Malvin Sutanto
  • Masatoshi Kubode
  • Mathew Winters
  • Michael Bailey
  • Michał Górny
  • Mihai Neacsu
  • Mike Scamell
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nick Firmani
  • Nicklas Ansman Giertz
  • Niclas Kron
  • Nicolás Lichtmaier
  • Niek Haarman
  • Niels van Hove
  • Niklas Baudy
  • Renato Goncalves
  • Roar Grønmo
  • Ruslan Baratov
  • Sinan Kozak
  • Sławomir Czerwiński
  • Stefan Wolf
  • Stephen D'Amico
  • Tao Wang
  • Tomas Chladek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Zac Sweers