Android Studio 4.1 (sierpień 2020 r.)

Android Studio 4.1 to ważna wersja, 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 emulatora Androida 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 .tflitemodelu 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. Metadane możesz też dodać do modelu TensorFlow Lite samodzielnie, zgodnie z instrukcjami 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. Import powinien działać prawidłowo, ale niektóre dane wejściowe lub wyjściowe modelu są reprezentowane przez obiekty 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. Obsługa profilowania urządzeń z Androidem 11 jest obecnie dostępna 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 prostokątne: 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:

    • zbiorcze 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 SurfaceFlingeraVSYNC 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.

Samodzielne profilery są już dostępne

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 marginesie: w przypadku projektów, które korzystają z Daggera, IDE udostępnia działania w marginesie, które pomagają poruszać się po kodzie z adnotacjami Daggera. Na przykład kliknięcie działania w przypadku 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, że w oknie Znajdź pojawi się dostawca 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 Android Studio w oknie Create New Project (Utwórz nowy projekt) korzystają teraz z komponentów Material Design (MDC) i domyślnie 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 themes.xml (zamiast styles.xml) i używają nazw Theme.<var><var>.

  • Ciemny motyw: podstawowe motywy aplikacji używają elementów nadrzędnych DayNight i są podzielone na res/values i res/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 w 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 środowiska 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 uzupełniania kodu w języku Kotlin. Szczegóły znajdziesz w historii zmian w Kotlinie 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. Użyj menu na pasku narzędzi, aby przełączać się między wieloma widokami niestandardowymi, lub kliknij 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 raportów o awariach natywnych

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 symbolizacji 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 dużo 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 zrestartuj aktywność Ikona Zastosuj zmiany i uruchom ponownie.