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ę 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 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 przyciskiwyświetlać ikony.do przełączania opcji wyświetlania:

    • Aby włączyć podzielony widok, kliknij ikonę Podziel ikona widoku podzielonego.
    • 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 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 tylko wyniki 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. Aby dowiedzieć się więcej, przeczytaj pełne informacje o wersji.

Wyświetlanie powiązania

Powiązanie widoków ułatwia pisanie kodu interakcji z widokami przez wygenerowanie klasy powiązania dla każdego pliku układu XML. 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 (Refaktoryzacja > 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 plików 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

Poniższe aktualizacje obsługują natywne programowanie (w języku C/C++) w Android Studio.

Pomoc Kotlin

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ę (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 przepływ pracy przy programowaniu JNI, w tym ulepszone wskazówki typu, autouzupełnianie, inspekcje i refaktoryzację kodu.

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

Nie musisz już tworzyć nowego projektu, jeśli plik APK w Twoim projekcie zostanie zaktualizowany poza IDE. Android Studio wykrywa zmiany w pliku APK i umożliwia jego ponowne zaimportowanie.

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 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:

  • 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 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:

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

W pewnych 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, 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

Filtruję zrzut 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 przypadku 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, aby wyszukać pierwszy punkt 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 w widoku mapy Zapisz trasę.
  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 kilku wyświetlaczy

Emulator Androida umożliwia teraz wdrożenie aplikacji na wielu wyświetlaczach, które obsługują niestandardowe wymiary, i ułatwia testowanie aplikacji, które obsługują wiele okien i wiele ekranów. 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 dodatkowy 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, klikając Plik > Nowy > Nowy moduł na pasku menu, a następnie klikając Moduł motoryzacyjny. 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 pakietów 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 lub obrazy systemu, gdy połączenie z internetem jest zawodne.

Dodatkowo, jeśli zadanie pobierania pakietu SDK działa w tle, możesz wstrzymać lub wznowić pobieranie za pomocą 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ą wstrzymywanie i wznawianie 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 otrzymywać dodatkowe aktualizacje, zaktualizuj stanowisko robocze 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 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 do przełączania trybu offline 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

Podstawowe IDE Android Studio zostało zaktualizowane o ulepszenia wprowadzone od IntelliJ IDEA do 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
  • Dawid Burström
  • Deepanshu
  • Egor Andriejićí
  • Eli Graber
  • Emin Kokalari
  • Evan Tatarka
  • Frantisek Nagy
  • Greg Moens
  • Anna Kowalska
  • Hans Petter Eide
  • Henning Bunk
  • Hugo Visser,
  • Igor Escodro
  • Iñaki Villar
  • Javentira lienata
  • Jan Kowalski
  • 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
  • Mikołaj 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 Chładek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Zac Sweers