Android Studio 4.1 (sierpień 2020 r.)

Android Studio 4.1 to wersja główna, która zawiera wiele nowych funkcji i ulepszeń.

4.1.3 (marzec 2021 r.)

Ta niewielka aktualizacja zawiera różne poprawki błędów. Listę ważnych poprawek błędów znajdziesz w odpowiednim poście na blogu o aktualizacjach.

4.1.2 (styczeń 2021 r.)

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2021/01/android-studio-412-available.html">
    Release Updates blog</a>.
</p>
<p><b>4.1.1 (November 2020)</b></p>

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2020/11/android-studio-411-available.html">
    Release Updates blog</a>.
</p>

Nowy inspektor bazy danych

Sprawdzaj bazy danych, twórz dotyczące ich zapytania i modyfikuj je w działającej aplikacji za pomocą nowego inspektora bazy danych. Aby rozpocząć, wdróż aplikację na urządzeniu z API na poziomie 26 lub wyższym i na pasku menu kliknij Widok > Okna narzędzi > Inspektor bazy danych.

Więcej informacji znajdziesz w artykule Debugowanie bazy danych za pomocą narzędzia Database Inspector.

Uruchamianie Android Emulatora bezpośrednio w Android Studio

Emulatora Androida możesz teraz uruchamiać bezpośrednio w Android Studio. Używaj tej funkcji, aby oszczędzać miejsce na ekranie, szybko przełączać się między emulatorem a oknem edytora za pomocą klawiszy skrótu oraz porządkować przepływ pracy w IDE i emulatorze w jednym oknie aplikacji.

Emulator uruchomiony w oknie narzędziowym w Android Studio.

Więcej informacji znajdziesz w dokumentacji emulatora Androida.

Korzystanie z modeli TensorFlow Lite

Powiązanie modelu ML ułatwia bezpośrednie importowanie plików .tflite modeli i korzystanie z nich w projektach. Android Studio generuje łatwe w użyciu klasy, dzięki czemu możesz uruchamiać model przy użyciu mniejszej ilości kodu i większego bezpieczeństwa typów.

Obsługiwane modele

Obecna implementacja powiązania modelu ML obsługuje modele klasyfikacji obrazów i przenoszenia stylu, pod warunkiem że są one wzbogacone o metadane. Z czasem obsługa zostanie rozszerzona na inne obszary problemowe, takie jak wykrywanie obiektów, segmentacja obrazów i klasyfikacja tekstu.

W TensorFlow Hub znajdziesz szeroką gamę wstępnie wytrenowanych modeli z metadanymi. Możesz też samodzielnie dodać metadane do modelu TensorFlow Lite, zgodnie z opisem w artykule Dodawanie metadanych do modelu TensorFlow Lite.

Importowanie pliku modelu

Aby zaimportować obsługiwany plik modelu, wykonaj te czynności:

  1. Otwórz okno importowania modelu TensorFlow Lite w menu Plik:Plik > Nowy > Inne > Model TensorFlow Lite.
  2. Wybierz plik modelu .tflite, który został wcześniej pobrany lub utworzony.
  3. Kliknij Zakończ.

Spowoduje to zaimportowanie pliku modelu do projektu i umieszczenie go w folderze ml/. Jeśli ten katalog nie istnieje, Android Studio utworzy go za Ciebie.

Importowanie modelu TensorFlow Lite

Wyświetlanie metadanych i użycia modelu

Aby wyświetlić szczegóły zaimportowanego modelu i uzyskać instrukcje dotyczące jego używania w aplikacji, kliknij dwukrotnie plik modelu w projekcie, aby otworzyć stronę przeglądarki modeli, która zawiera te informacje:

  • Model: ogólny opis modelu.
  • Tensory: opis tensorów wejściowych i wyjściowych.
  • Przykładowy kod: przykład interfejsu modelu w aplikacji

Oto przykład użycia pliku mobilenet_v1_0.25_160_quantized.tflite:

Jak widać na przykładzie, Android Studio tworzy klasę o nazwie MobilenetV1025160Quantized, która służy do interakcji z modelem.

Jeśli model nie ma metadanych, na tym ekranie będą wyświetlane tylko podstawowe informacje.

Znane problemy i obejścia

  • Obsługa modeli TensorFlow Lite w przypadku problemów innych niż klasyfikacja obrazów i transfer stylu jest obecnie ograniczona. Chociaż import powinien działać prawidłowo, niektóre dane wejściowe lub wyjściowe modelu są reprezentowane przez TensorBuffer, a nie przez przyjazne typy. W przypadku modeli bez metadanych wszystkie dane wejściowe i wyjściowe będą miały postać TensorBuffer.
  • Modele, w których typy danych wejściowych i wyjściowych są inne niż DataType.UINT8 lub DataType.FLOAT32, nie są obsługiwane.

Ta funkcja jest nadal w fazie rozwoju, więc prześlij opinię lub zgłoś błędy.

Native Memory Profiler

Profiler pamięci w Android Studio zawiera teraz profiler pamięci natywnej dla aplikacji wdrażanych na urządzeniach fizycznych z Androidem 10 lub nowszym. Za pomocą profilera pamięci natywnej możesz rejestrować alokacje i dealokacje pamięci z kodu natywnego oraz sprawdzać statystyki zbiorcze dotyczące obiektów natywnych.

Nagranie w profilerze pamięci natywnej

Więcej informacji o profilerze pamięci natywnej znajdziesz w artykule Sprawdzanie wykorzystania pamięci przez aplikację za pomocą profilera pamięci.

Znane problemy i obejścia

Profiler pamięci natywnej w Androidzie Studio 4.1 nie działa na urządzeniach z Androidem 11. Profilowanie urządzeń z Androidem 11 jest obecnie dostępne w wersji 4.2 w wersji zapoznawczej.

W pierwszej wersji 4.1 profilowanie uruchamiania aplikacji zostało wyłączone. Ta opcja zostanie włączona w kolejnej wersji.

Aby obejść ten problem, możesz użyć samodzielnego profilera wiersza poleceń Perfetto do rejestrowania profili uruchamiania.

Interfejs śledzenia systemu: łatwiejszy wybór, nowa karta analizy i więcej danych renderowania klatek

Interfejs śledzenia systemu w profilerze Android Studio obejmuje te ulepszenia:

  • Zaznaczanie obszaru: w sekcji Wątki możesz teraz przeciągnąć myszą, aby zaznaczyć prostokątny obszar, który możesz powiększyć, klikając przycisk Powiększ zaznaczenie Przycisk powiększania wybranego elementu w profilerach w prawym górnym rogu (lub używając skrótu klawiszowego M). Gdy przeciągniesz i upuścisz podobne wątki obok siebie, możesz wybrać kilka wątków, aby sprawdzić je wszystkie jednocześnie. Możesz na przykład przeprowadzać analizę w wielu wątkach roboczych.

  • Karta Podsumowanie: nowa karta Podsumowanie w panelu Analiza zawiera:

    • zagregowane statystyki wszystkich wystąpień określonego zdarzenia, np. liczbę wystąpień oraz minimalny i maksymalny czas trwania;

    • Statystyki zdarzenia śledzenia dla wybranego wystąpienia.

    • Dane dotyczące rozkładu stanu wątków.

    • Najdłużej trwające wystąpienia wybranego zdarzenia śledzenia.

    Aby przejść do innego wystąpienia, wybierz inny wiersz w tabeli.

  • Wyświetlanie danych: w sekcji Wyświetlanie nowe osie czasu dla SurfaceFlingerVSYNC pomagają badać problemy z renderowaniem w interfejsie aplikacji.

Podstawowe instrukcje dotyczące rejestrowania śladu systemowego znajdziesz w sekcji Rejestrowanie śladów artykułu Sprawdzanie aktywności procesora za pomocą profilera procesora.

Dostępne są już samodzielne profilery

Dzięki nowym samodzielnym profilerom możesz teraz profilować aplikację bez uruchamiania pełnego środowiska IDE Android Studio.

Instrukcje korzystania z samodzielnych profilerów znajdziesz w artykule Uruchamianie samodzielnych profilerów.

Obsługa nawigacji Dagger

Działania w IDE umożliwiające przechodzenie do konsumentów i dostawców Daggera

Android Studio ułatwia poruszanie się po kodzie związanym z Daggerem, udostępniając nowe działania na marginesie i rozszerzając obsługę w oknie Znajdź użycia.

  • Nowe działania w obszarze marginesu: w przypadku projektów, które korzystają z Daggera, środowisko IDE udostępnia działania w obszarze marginesu, które pomagają w poruszaniu się po kodzie z adnotacjami Daggera. Na przykład kliknięcie działania w marginesie obok metody, która wykorzystuje dany typ, przenosi Cię do dostawcy tego typu. Z kolei kliknięcie działania w  marginesie przenosi Cię do miejsca, w którym typ jest używany jako zależność.

  • Węzeł Find Usages: gdy wywołasz funkcję Find Usages (Znajdź użycia) w przypadku dostawcy danego typu, w oknie Find (Znajdź) pojawi się węzeł Dependency consumer(s) (Konsumenci zależności), który zawiera listę konsumentów tego typu. Z kolei wywołanie tego działania w przypadku konsumenta zależności wstrzykiwanej przez Daggera spowoduje wyświetlenie w oknie Znajdź dostawcy tej zależności.

Komponenty Material Design: zaktualizowane motywy i style w nowych szablonach projektów

Animacja: tworzenie projektu w Android Studio z nowymi właściwościami Material Design.

Szablony Androida Studio w oknie Create New Project (Utwórz nowy projekt) domyślnie korzystają z komponentów Material Design (MDC) i są zgodne z aktualnymi wskazówkami dotyczącymi motywów i stylów. Aktualizacje obejmują:

  • MDC: projekty zależą od com.google.android.material:materialbuild.gradle. Motywy aplikacji podstawowej używają Theme.MaterialComponents.* elementów nadrzędnych i zastępują zaktualizowane kolory MDC oraz atrybuty „on”.

  • Zasoby kolorów: zasoby kolorów w colors.xml używają nazw dosłownych (np. purple_500 zamiast colorPrimary).

  • Zasoby motywu: zasoby motywu znajdują się w katalogu themes.xml (zamiast styles.xml) i używają nazw Theme.<var><var>.

  • Ciemny motyw: podstawowe motywy aplikacji używają DayNight motywów nadrzędnych i są podzielone na res/valuesres/values-night.

  • Atrybuty motywu: zasoby kolorów są w układach i stylach przywoływane jako atrybuty motywu (np. ?attr/colorPrimary), aby uniknąć zakodowanych na stałe kolorów.

IntelliJ IDEA 2020.1

Główne środowisko IDE Android Studio zostało zaktualizowane o ulepszenia z IntelliJ IDEA do wersji 2020.1, w tym nowe okno Zatwierdź, które umożliwia operacje kontroli wersji, oraz nowy tryb Zen, który można włączyć, wybierając Widok > Wygląd > Włącz tryb bez rozpraszania uwagi.

Więcej informacji o ulepszeniach w wersji 2020.1 znajdziesz w artykule IDEA 2020.1.

Zmiany w katalogu konfiguracji IDE

Lokalizacje katalogów konfiguracji użytkownika zostały zmienione na następujące:

Windows

Składnia: %APPDATA%\Google&lt;product><version>

Przykład: C:\Users\YourUserName\AppData\Roaming\Google\AndroidStudio4.1

macOS

Składnia: ~/Library/Application Support/Google/<product><version>

Przykład: ~/Library/Application Support/Google/AndroidStudio4.1

Linux

Składnia: ~/.config/Google/<product><version>

Przykład: ~/.config/Google/AndroidStudio4.1

Nowe lokalizacje katalogów są zgodne z ostatnimi aktualizacjami IntelliJ IDEA, czyli IDE, na którym opiera się Android Studio.

Jeśli po uaktualnieniu Studio nie uruchomi się ponownie, może być konieczne usunięcie katalogu konfiguracji z poprzedniej wersji Studio. Więcej informacji znajdziesz na stronie znanych problemów.

Kotlin 1.3.72

Android Studio 4.1 zawiera Kotlin 1.3.72, który obejmuje szereg poprawek zwiększających skuteczność wyróżniania składni, inspekcji i autouzupełniania kodu Kotlin. Szczegółowe informacje znajdziesz w historii zmian Kotlin w wersji 1.3.72.

Podgląd widoku niestandardowego

Podczas tworzenia widoku niestandardowego (np. przez rozszerzenie klasy View lub Button) Android Studio wyświetla teraz podgląd tego widoku. Za pomocą menu na pasku narzędzi możesz przełączać się między wieloma widokami niestandardowymi. Możesz też klikać przyciski, aby zawijać tekst w pionie lub w poziomie.

Wyświetlaj podgląd widoków niestandardowych w środowisku IDE.

Uwaga: jeśli nie widzisz zmian w podglądzie, na pasku menu wybierz Kompilacja > Utwórz projekt.

Symbolizacja natywnych raportów o awariach

Gdy w kodzie natywnym wystąpi awaria lub błąd ANR, system tworzy zrzut stosu, czyli zapis sekwencji funkcji zagnieżdżonych wywołanych w programie do momentu awarii. Takie zapisy mogą Ci pomóc w znalezieniu problemów w źródle i ich naprawieniu, ale najpierw musisz je zsymbolizować, aby przetłumaczyć adresy maszynowe z powrotem na czytelne nazwy funkcji.

Jeśli Twoja aplikacja lub gra została opracowana przy użyciu kodu natywnego, np. języka C++, w Konsoli Play możesz teraz przesyłać pliki symboli debugowania dla każdej wersji aplikacji. Konsola Play używa tych plików do symbolizowania zrzutów stosu aplikacji, co ułatwia analizowanie awarii i błędów ANR. Aby dowiedzieć się, jak przesyłać pliki symboli do debugowania, przeczytaj artykuł Obsługa awarii w kodzie natywnym.

Apply Changes

Aby zwiększyć Twoją produktywność podczas wprowadzania zmian w aplikacji, wprowadziliśmy te ulepszenia funkcji Zastosuj zmiany na urządzeniach z Androidem 11 w wersji deweloperskiej 3 lub nowszej:

Szybsze wdrażanie

Zainwestowaliśmy w optymalizację szybkości iteracji, opracowując metodę wdrażania i utrwalania zmian na urządzeniu bez instalowania aplikacji. Po początkowym wdrożeniu kolejne wdrożenia na urządzeniach z Androidem 11 za pomocą opcji Zastosuj zmiany w kodzie Ikona Zastosuj zmiany w kodzie lub Zastosuj zmiany i ponownie uruchom aktywność Ikona Zastosuj zmiany i uruchom ponownie są teraz znacznie szybsze.

Więcej informacji o różnicach między tymi dwoma działaniami znajdziesz w sekcji Zastosuj zmiany.

Obsługa dodatkowych zmian w kodzie

Na urządzeniach z Androidem 11 w wersji Developer Preview 3 lub nowszej możesz teraz dodawać metody, a potem wdrażać te zmiany w uruchomionej aplikacji, klikając Zastosuj zmiany w kodzie Ikona Zastosuj zmiany w kodzie lub Zastosuj zmiany i ponownie uruchom aktywność Ikona Zastosuj zmiany i uruchom ponownie.