Android Studio 3.6 (luty 2020 r.)

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

Chcemy też podziękować wszystkim współtwórcom z społeczności, którzy pomogli nam w tej wersji.

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ę ważnych poprawek błędów, przeczytaj powiązany post na blogu o aktualizacjach 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ładów i Menedżera zasobów.

Podzielony widok i powiększenie w edytorach projektów

widok podzielony pokazuje jednocześnie widok projektu i tekstu.

Ta wersja zawiera te aktualizacje edytorów wizualnych:

  • Edytory projektów, takie jak 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świetl ikony, które umożliwiają przełączanie opcji wyświetlania:

    • Aby włączyć widok podzielony, kliknij ikonę Podziel.ikona widoku dzielonego
    • Aby włączyć widok źródła 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 selektora 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 aktualizacje:

  • 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.
  • Możesz teraz zmieniać nazwy zasobów podczas importowania, klikając w polu tekstowym 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.

Zastępuje ono wiązania findViewById(), więc eliminuje ryzyko wystąpienia wyjątków wskaźnika 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 refaktoryzacji umożliwiająca włączenie 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 nazywa się on „aplikacja”) i wybierz Refaktor > Włącz obsługę aplikacji błyskawicznych.
  3. W wyświetlonym oknie wybierz moduł podstawowy z menu.
  4. Kliknij OK.

Uwaga: usunęliśmy opcję błyskawicznego włączania podstawowego modułu aplikacji w kreatorze tworzenia nowego projektu.

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 twórz funkcję implementacji kodu pośredniczącego 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óżnione jako błąd.

  • Gdy zmienisz nazwę (refaktoryzacji) natywnej funkcji implementacji, wszystkie odpowiadające jej 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 płynniejszy 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 Ci 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 przecieków w usłudze Memory Profiler

Podczas analizowania zrzutu stosu w narzędziu Memory Profiler możesz teraz filtrować dane profilowania, które według Android Studio mogą wskazywać wycieki pamięci w instancjach Activity i Fragment w Twojej aplikacji.

Typy danych wyświetlanych przez filtr obejmują:

  • Activity instancja, która została zniszczona, ale nadal się odwołuje.
  • Fragment, które nie mają prawidłowej wartości FragmentManager, ale są nadal używane.

Załącz źródła plików APK tylko z Kotlinem

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 o dołączaniu źródeł Kotlin/Java.

Wykrywanie wycieków w narzędziu Memory Profiler

Podczas analizowania zrzutu stosu w narzędziu Memory Profiler możesz teraz filtrować dane profilowania, które według Android Studio mogą wskazywać wycieki pamięci w instancjach Activity i Fragment w Twojej aplikacji.

Typy danych wyświetlanych przez filtr obejmują:

  • 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 pewnych sytuacjach, takich jak ta poniżej, filtr może zwrócić wyniki fałszywie pozytywne:

  • Fragment został utworzony, ale nie został jeszcze użyty.
  • Element Fragment jest przechowywany w pamięci podręcznej, ale nie wchodzi w skład elementu 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, zaznacz pole wyboru Wycieki pamięci z działalności/fragmentów w panelu zrzutu stosu w profilu pamięci.

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żywać komponentu WebView Map Google do wyszukiwania ciekawych miejsc tak samo jak podczas korzystania z Map Google na telefonie lub w przeglądarce. Gdy szukasz lub klikasz lokalizację na mapie, możesz ją zapisać, wybierając Zapisz punkt w pobliżu dolnej części 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 do wyszukania pierwszego miejsca docelowego na trasie.
  2. Wybierz lokalizację w wynikach wyszukiwania.
  3. Kliknij przycisk Nawiguj.
  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ć emulator po zapisanej trasie, wybierz trasę z listy Zapisanych tras i kliknij Odtwórz trasę w prawym dolnym rogu okna Rozszerzone elementy sterujące. 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 kilku 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 wiele ekranów na karcie Rozszerzone elementy sterujące emulatora.

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

Gdy tworzysz nowy projekt w Android Studio, w kreatorze tworzenia nowego projektu na karcie Automotive możesz wybrać jeden z 3 szablonów: Brak aktywności, Usługa multimedialna i Usługa przesyłania 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

Jeśli pobierasz komponenty i narzędzia SDK za pomocą SDK Manager, Android Studio umożliwia teraz wznawianie pobierania, które zostało przerwane (np. z powodu problemu z siecią), bez ponownego rozpoczynania pobierania od początku. To ulepszenie jest szczególnie przydatne w przypadku dużych plików do pobrania, takich jak emulator Androida lub obrazy systemu, gdy połączenie z internetem jest zawodne.

Jeśli w tle działa 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ą wstrzymywanie i wznawianie pobierania.

zadanie pobierania w tle na pasku stanu z nowymi opcjami umożliwiającymi wstrzymanie i wznowienie pobierania;

Wycofanie obsługi Win32

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

Więcej informacji znajdziesz w blogu na temat deprecjacji 32-bitowego 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 pobranie listy zadań może wydłużyć czas 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
  • Aleksiej Rott
  • Andrea Leganza
  • Benedikt Kolb
  • César Puerta
  • Curtis Kroetsch
  • Damian Wieczorek
  • Dan Lew
  • David Burström
  • Deepanshu
  • Egor Andriejićí
  • 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
  • Droga Grønmo
  • Rusłan Baratow
  • Sinan Kozak
  • Sławomir Czerwiński
  • Stefan Wolf
  • Stephen D'Amico
  • Tao Wang
  • Tomas Chładek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Zac Sweers