Poniżej znajdziesz nowe funkcje w Android Studio Bumblebee.
Obsługa wykonywania testów KMP
Testy projektów Kotlin Multiplatform (KMP) możesz przeprowadzać w Android Studio Trzmiel.
Aby mieć pewność, że testy w Android Studio będą przebiegać sprawnie, upewnij się, spełniasz wszystkie wymagania:
- AGP 7.0.0-alfa08 lub nowsza
- Gradle w wersji 6.8.2 lub nowszej
- Wtyczka Kotlin w wersji 1.4.30 lub nowszej
Nowy Menedżer urządzeń
Menedżer urządzeń zastępuje Menedżera AVD Manager, oferując na ekranie powitalnym w Android Studio lub po otwarciu projektu, Menedżer urządzeń pojawi się kilka nowych funkcji, które ułatwią tworzenie i zarządzać wszystkimi lokalnymi urządzeniami testowymi, takimi jak:
- Bardziej elastyczny interfejs, który można zadokować w IDE, pływającym lub osobne okno, tak jak w innych oknach narzędzi w Android Studio. Dzięki temu łatwiejszy dostęp do urządzeń bez blokowania innych okien IDE.
- Karta Virtual (Wirtualna) umożliwiająca tworzenie i wdrażanie wirtualnych maszyn wirtualnych oraz zarządzanie nimi urządzeniach; szybko sprawdzać szczegóły każdego urządzenia; lub szybko skontrolować urządzenie, w Eksploratorze plików na urządzeniu.
- Karta Fizyczna, która umożliwia szybkie sparowanie z nowym urządzeniem przy użyciu ADB Wi-Fi i szybko sprawdzaj szczegóły każdego urządzenia fizycznego. Możesz też szybko sprawdzić system plików na każdym urządzeniu za pomocą Eksploratora plików na urządzeniu. przycisk.
Aby otworzyć nowego Menedżera urządzeń, wykonaj jedną z tych czynności:
- Na ekranie powitalnym w Android Studio wybierz Więcej czynności > Urządzenie wirtualne Menedżer.
- Po otwarciu projektu wybierz Widok > Okna narzędziowe > Menedżer urządzeń od na pasku menu głównego.
Nowość w Inspektorze układu
Przechwytywanie zrzutów hierarchii układu
Inspektor układu pozwala teraz zapisywać zrzuty układu uruchomionej aplikacji dzięki czemu można łatwo udostępniać je innym osobom lub wracać do nich później.
Zrzuty zawierają dane, które zwykle można zobaczyć podczas korzystania z Układu Inspektor, w tym szczegółowe wyrenderowanie układu 3D, drzewo komponentów układ widoku, tworzenia i hybrydowego, a także szczegółowe atrybuty poszczególnych interfejsu. Aby zapisać zrzut:
- Wdrażanie aplikacji na urządzeniu z interfejsem API na poziomie 23 lub wyższym.
- Otwórz Inspektora układu, wybierając Widok > Okna narzędziowe > Układ Inspektor.
- Inspektor układu powinien automatycznie łączyć się z procesem aplikacji. Jeśli nie, wybierz proces aplikacji z menu.
- Jeśli chcesz przechwycić zrzut, kliknij Eksportuj zrzut w inspektorze układu. na pasku narzędzi.
- W wyświetlonym oknie systemowym podaj nazwę i lokalizację.
zapisz zrzut ekranu. Pamiętaj, aby zapisać plik z rozszerzeniem
*.li
.
Następnie możesz wczytać zrzut inspektora układu, wybierając Plik > Otwórz z
na pasku menu głównego i otwórz plik *.li
.
Obsługa sprawdzania semantyki tworzenia wiadomości
W sekcji tworzenia wiadomości: Semantyka opisać interfejs w sposób alternatywny, zrozumiały dla Ułatwienia dostępu usług, a także Testowanie. W W Android Studio Bumblebee możesz sprawdzać układy za pomocą Inspektora układu semantyczne w układach tworzenia wiadomości.
Wybierając węzeł tworzenia, użyj okna Atrybuty, aby sprawdzić, czy bezpośrednio deklaruje informacje semantyczne, scala semantykę z elementów podrzędnych lub i jednym, i drugim. Aby szybko zidentyfikować węzły zawierające semantykę (zadeklarowane lub kliknij menu Opcje widoku w Drzewie komponentów i wybierz Podświetl warstwy semantyczne. Spowoduje to podświetlenie tylko węzłów w drzewie, które mają semantykę. Przy użyciu klawiatury możesz szybko możesz przełączać się między nimi.
Unikanie ponownego uruchamiania aktywności
Łączenie inspektora układu z aplikacją uruchomioną na starszych wersjach Androida Studio spowodowałoby ponowne uruchomienie aktywności w aplikacji. Jest to wymagane do ustawienia flagę urządzenia, która umożliwia sprawdzanie układów aplikacji.
W Android Studio Bumblebee możesz uniknąć ponownego uruchamiania aktywności, gdy połączysz w inspektorze układu, ustawiając tę flagę z wyprzedzeniem przy użyciu jednej z tych kroki:
Włącz opcję uruchamiania konfiguracji
- Wybierz Uruchom > Edytuj konfiguracje na pasku menu głównego. Pojawi się okno Konfiguracje uruchamiania/debugowania.
- Przejdź do konfiguracji uruchamiania, której chcesz użyć.
- W sekcji Opcje inspektora układu zaznacz pole obok Łączenie z Inspektorem układu bez ponownego uruchamiania działania.
- Użyj konfiguracji uruchamiania przy następnym sprawdzeniu aplikacji przy użyciu Inspektora układu.
Ustaw flagę w wierszu poleceń:
- Otwórz okno terminala na komputerze podłączonym do Twojego urządzenia
- Ustaw flagę urządzenia dla aplikacji za pomocą tego polecenia:
adb shell settings put global debug_view_attributes_application_package <my_package_name>
- Wdróż aplikację na urządzeniu i podłącz inspektora układu. Android, Studio sprawdzi, czy flaga jest ustawiona, i unika ponownego uruchamiania aktywności. jeśli to możliwe.
Migawki Inspektora układu dokumentów
Możesz teraz tworzyć zrzuty hierarchii układu aplikacji, aby je zapisywać, udostępniać
sprawdzić później. Przechwytywane są dane, które można zwykle zobaczyć, używając
z inspektorem układu, w tym szczegółowo wyrenderowanym 3D układu,
drzewo komponentów układu widoku, tworzenia i hybrydowego oraz atrybutów szczegółowych
dla każdego komponentu. Podczas sprawdzania układu działającej aplikacji
kliknij Eksportuj zrzut na pasku narzędzi Inspektora układu.
i zapisz migawkę z rozszerzeniem *.li
. Następnie można wczytać układ
Zrzut inspektora, wybierając Plik > Otwórz na głównym pasku menu,
Otwieram plik *.li
. Migawka jest wyświetlana na karcie w oknie Edytora,
łatwo porównać go ze swoją aplikacją.
Nowość w narzędziu Sprawdzanie aplikacji
W Android Studio Bumblebee pojawiły się nowe narzędzia i funkcje Okres inspekcji. Inspektora aplikacji możesz otworzyć, wybierając Widok > Narzędzie Windows > Sprawdzanie aplikacji na głównym pasku menu.
Inspektor sieci
Program profilujący sieci w oknie narzędzia Profilers został przeniesiony do folderu Aplikacja Okno narzędzia inspekcji. Jeśli korzystasz już z programu profilującego sieci, wszystkie nadal dostępne są te same funkcje i obszerne dane o ruchu w sieci. Simply wdrożyć aplikację na urządzeniu z interfejsem API na poziomie 26 lub wyższym i otworzyć Inspektor > Inspektor sieci.
Sprawdzanie zadań, alarmów i blokad wybudzenia
Inspektor zadań w tle umożliwia teraz sprawdzanie zadań aplikacji, Alarmy i blokady wybudzenia jako dodatek do istniejącej obsługi inspekcji Instancje robocze. Każdy typ zadania asynchronicznego pojawia się w na karcie inspektora, co pozwala łatwo monitorować jego stan postęp. Podobnie jak w przypadku opcji Workers, możesz wybrać ustawienie zadania, alarmu lub wybudzenia, aby sprawdzić szczegółowe informacje o nim w panelu Szczegóły zadania.
Pracownicy korzystają z mechanizmów Zadania i Wybudzenia, które są dla nich szczególnie ważne Zaplanowane przez pracowników są wyświetlane jako elementy podrzędne poszczególnych instancji roboczych. Pamiętaj, że możesz: zobaczyć tylko instancje robocze w trybie wykresu.
Nowość w Programach profilujących
W Android Studio Bumblebee pojawiły się nowe funkcje, które pomogą Ci lepiej zrozumieć jak aplikacja wykorzystuje zasoby. Aby profilować aplikację, wybierz Wyświetl > Narzędzie Windows > Profiler na głównym pasku menu.
Ścieżka wykrywania stygnięcia
podczas profilowania aplikacji na urządzeniach z Androidem 11 (poziom interfejsu API 30) lub program profilujący CPU pokazuje teraz nową grupę ścieżek, które pokazują etapy każdej klatki w sekcji Cykl życia ramki: Aplikacja, Poczekaj na GPU, Kompozycję i Klatki na wyświetlaczu. Etykiety każdej ścieżki ramki z numerem ramki i oznaczone kolorami, aby ułatwić aby zobaczyć, na jakim etapie cyklu życia znajduje się konkretna ramka, a także które można przełączać, aby porównać ze zdarzeniami Vsync. Za pomocą tych danych możesz: zrozumieć, gdzie w aplikacji może występować zaciek, i zbadać jego główne przyczyny. W panelu Analiza znajduje się teraz karta Klatki, podsumowuje informacje o renderowaniu dotyczące wszystkich klatek. Więcej informacji: Wykrywanie zacięć interfejsu.
Obsługa profilowania aplikacji
Przy profilowaniu aplikacji ważne jest, aby wygenerować dokładne dane za pomocą
najbardziej zbliżony do tego, który zainstalują użytkownicy. Do
, dodaj teraz tag
usługę <profileable>
w:
pliku manifestu do profilu aplikacji, których nie można debugować, jak pokazuje
tego kodu.
<profileable android:shell="true"/>
Profileable to konfiguracja w pliku manifestu wprowadzona w Androidzie 10. jest dostępna na potrzeby zadań profilowania procesora i pamięci. Korzystanie z flagi umożliwiającej profilowanie zamiast flagi z możliwością debugowania ma tę główną zaletę: niższe koszty pomiar skuteczności; jednak niektóre funkcje profilowania są niedostępne. w przypadku profilowalnych kompilacji, takich jak oś czasu zdarzenia, profilowanie CPU inicjowane przez interfejs API, zrzuty stosu czy nagrania lokalizacji na żywo. Więcej informacji: Aplikacje z możliwością profilowania.
Zwiń ramki stosu wywołań
Teraz można zwinąć klatki, które nie mają związku z analizą zagrożeń, sprawdzić przykładowe nagranie stosu wywołań w oknie narzędzia Profilers. Stosy wywołań pomagają zrozumieć, która część kodu została wykonana, i powód jego wywołania. Jednakże wywołanie programu w języku Java/Kotlin zazwyczaj zawiera nie tylko kod Java/Kotlin, ale również ramki z kodu natywnego, lub rozpraszające uwagę. Aby dowiedzieć się więcej o zawężaniu widoku wywołań wywołań, zobacz Sprawdzanie ramek blokady wywołań.
Debugowanie bezprzewodowe
Android Studio Bumblebee obsługuje funkcję debugowania bezprzewodowego na Androidzie 11 i wyższych. Parowanie i wdrażanie aplikacji z Android Studio przez Wi-Fi bez użycia kabla USB i zarządzania połączeniami Android Debug Bridge (adb). przy użyciu wiersza poleceń. Aby z niej skorzystać, przejdź do sekcji Parowanie urządzeń przez Wi-Fi. w menu wyboru urządzenia, a następnie wybierz kod QR lub Kod PIN parowania. Na urządzeniu z Androidem 11 lub nowszym, w sekcji Opcje programisty, znajdź ekran Debugowanie bezprzewodowe i zainicjuj i bezprzewodowo połączyć się z sesją adb w Android Studio. Więcej informacji o konfiguracji debugowania bezprzewodowego na stronie Łączenie się z urządzeniem przez Wi-Fi (Android 11 lub nowszy)
Utwórz interaktywny podgląd domyślnie włączony
Począwszy od Androida Studio Bumblebee, interaktywny podgląd to domyślnie włączone. Interaktywny podgląd pozwala wchodzić w interakcję z tak jak na urządzeniu. Interaktywny podgląd to izolowane od innych wersji podglądu w środowisku piaskownicy, gdzie można kliknij elementy i wpisz dane wejściowe użytkownika na podglądzie. To szybki sposób na przetestowanie różne stany i gesty funkcji kompozycyjnej, np. pole wyboru zaznaczono lub pole jest puste.
Podgląd trybu interaktywnego działa bezpośrednio w Android Studio bez emulatora co skutkuje pewnymi ograniczeniami:
- Brak dostępu do sieci.
- Brak dostępu do plików.
- Niektóre interfejsy Context API mogą nie być w pełni dostępne.
Podgląd animowanego wektora rysowalnego (AVD)
Narzędzie Animated Vector Drawable pozwala wyświetlać podgląd animacji
rysowalne zasoby. Dzięki tym narzędziom możesz zobaczyć podgląd <animation-list>
,
<animated-vector>
i zasoby (<animated-selector>
) w Android Studio
i ułatwia dopracowywanie
niestandardowych animacji.
Nieprzejściowe klasy R są domyślnie włączone
Nieprzejściowe klasy R są teraz domyślnie włączone. Możesz użyć nieprzechodniowego R klas z wtyczką Androida do obsługi Gradle, aby szybciej tworzyć aplikacje. z kilkoma modułami. Zapobiega to duplikowaniu zasobów, ponieważ zapewnia że klasa R każdego modułu zawiera tylko odwołania do własnych zasobów, bez pobierania odwołań z zależności. Dzięki temu staje się ona bardziej kompilacje i powiązane z nimi korzyści związane z unikaniem kompilacji.
Aby uzyskać pomoc w korzystaniu z tej funkcji, wybierz Refaktoryzacja > Przenieś do Nieprzenośne klasy R...
Aktualizacja obsługi Apple Silicon
Android Studio Arctic jest przeznaczony dla użytkowników korzystających z systemu macOS na sprzęcie Apple Silicon (arm64). Fox i emulator Androida obsługują tę nową architekturę od zeszłego roku roku. Jednak w tej wersji zaktualizowaliśmy platformę Android SDK. narzędzia v32.0.0 (w tym adb i fastboot) oraz narzędzia do kompilacji 32.1.0 (w tym aapt) jako uniwersalnych plików binarnych, dzięki którym deweloper aplikacji na Androida narzędzia nie wymagają już translatora plików binarnych Rosetty. Zobacz Informacje o wersji narzędzi platformy SDK
Zaktualizowano selektor urządzeń w narzędziach do projektowania
Aby uprościć projektowanie aplikacji na różne urządzenia z Androidem, zaktualizował selektor urządzeń w różnych oknach narzędzi do projektowania, takich jak edytor układów. oraz walidacji układu, korzystając z urządzeń referencyjnych, które odzwierciedlają popularne rozmiary format urządzenia. Od telefonów i tabletów po urządzenia Wear i Android TV. podgląd, weryfikowanie i edytowanie układu na ekranach są najpopularniejsze wśród popularnych urządzeń w świecie rzeczywistym.
Testowanie na Androidzie
Android Studio Bumblebee i AGP 7.1 wprowadzają kilka nowych funkcji które pozwalają zwiększyć niezawodność i skalowalność obsługi automatycznych z testami instrumentacji i zobaczysz przydatne wyniki, które można wykorzystać do debugowania problemów.
Uruchamiający testy ujednoliconego Gradle
Wtyczka Androida do obsługi Gradle w wersji 7.1.0 oraz Android Studio Bumblebee i nowsze wersje wykorzystują własnego wdrożenia narzędzia do uruchamiania testów z instrumentami na Androida, testów. Użycie tego samego testera pozwoli uzyskać spójne wyniki niezależnie od tego, czy używasz AGP z poziomu wiersza poleceń, na przykład serwera integracji lub Android Studio.
Poprzednie wersje Android Studio używają testu instrumentalnego IntelliJ na Androida zamiast za pomocą narzędzia Gradle do testowania przeznaczonego do tego narzędzia na Androida. Więc jeśli nie znasz w najnowszej wersji Android Studio w zależności od tego, czy używasz testów w Android Studio lub z wiersza poleceń za pomocą wtyczki do Gradle, mogą mieć inne wyniki, np. testy zdane z użyciem jednego biegacza, na innym.
Jeśli w projekcie masz już zapisane konfiguracje testowe, będzie używać Gradle do przeprowadzania testów na połączonym urządzeniu. Możesz utworzyć nowe z instrumentowana konfiguracja testu przy użyciu działania rynien obok zajęć testowych lub metody, jak pokazano poniżej.
Przeprowadzając testy zinstrumentowane, możesz sprawdzić, czy Android Studio jest używając narzędzia do uruchamiania testów Gradle, sprawdzając wynik testu w tablicy testów. danych wyjściowych zadania Gradle. Chociaż ulepszamy tę funkcję z każdą kolejną wersją w Android Studio, występują pewne znane problemy. W razie problemów proszę zgłoś błąd. Możesz też wyłączyć nowy potok testowania, aby przywrócić na stare zachowanie.
Emulator Androida działa teraz domyślnie bezpośrednio w Android Studio
Emulator Androida domyślnie działa bezpośrednio w Android Studio. Dzięki temu aby oszczędzać miejsce na ekranie, szybko przechodzić między emulatorem okno edytora za pomocą klawiszy skrótów oraz uporządkowanie przepływu pracy w IDE i emulatorze w jednym oknie aplikacji.
Gdy emulator będzie uruchomiony, będziesz mieć dostęp do jego typowych działań, takich jak: oraz rozszerzone opcje sterowania, takie jak odtwarzanie nawigacji. Aby uruchomić w osobnym oknie otwórz Plik > Ustawienia > Narzędzia > Emulator (Android Studio > Preferencje > Narzędzia > Emulator w systemie macOS) i odznacz Uruchom w oknie narzędzia.
Wyłącz nowy potok testowania
Domyślnie Android Studio Bumblebee używa narzędzia Gradle do testowania narzędzi. Jeśli masz problem, możesz wyłączyć tę funkcję w następujący sposób:
- Wybierz Plik > Ustawienia > Kompilacja, wykonanie, wdrożenie > Testowanie (lub Android Studio > Ustawienia > Kompilacja, Wykonywanie, Wdrożenie > Testowanie) w systemie MacOS).
- Odznacz pole Przeprowadzaj testy instrumentowane Androida przy użyciu Gradle i kliknij OK.
Możesz też przywrócić starsze działanie, wykonując jedną z tych czynności:
- Uruchamiając zadania Gradle z poziomu wiersza poleceń, użyj tego polecenia
parametr linii:
-Pandroid.experimental.androidTest.useUnifiedTestPlatform=false
- Dodaj ten parametr do pliku
gradle.properties
projektu:android.experimental.androidTest.useUnifiedTestPlatform=false
Aby rozwiązać napotkane problemy, zgłoś błąd.
Wersje poprawek
Poniżej znajdziesz poprawki poprawek w Android Studio Bumblebee.
Android Studio Bumblebee | Poprawka 3.1.1 z 2021 r. (kwiecień 2022 r.)
Ta drobna aktualizacja zawiera następujące poprawki błędów:
- Wtyczka Androida do obsługi Gradle
- Problemy dotyczące zduplikowanych zajęć zgłoszone przez R8
- Utwórz warianty
- Pole
versionNameSuffix
nie działa już, jeśli wariant nazwę wersji ustawia się za pomocą nowego interfejsu API onVariants.
- Pole
- Podgląd tworzenia wiadomości
- Poprawki błędów związanych z wydajnością i stabilnością.
- Rozwiąż problemy z zawieszeniami, które pojawiały się sporadycznie podczas korzystania z funkcji edytowania na żywo Funkcja literału.
- Importuj/synchronizuj
- „Wymagana synchronizacja Gradle” wiadomość ma nadmiarowe wersje AGP
- Ponowna kompilacja pliku Foo.java/kt usuwa za dużo i nie kompiluje ponownie pliku prawy komponent
- Struktura projektu
- Większa stabilność Asystenta uaktualniania AGP w przypadku zmiany wartości docelowej wersje
- Asystent uaktualniania AGP informuje teraz użytkowników, że wtyczki Gradle są uaktualniony
- Inspektor sieci
- Nowy inspektor sieci ulega awarii po aktualizacji Bumblebee
- Ten błąd pojawia się ciągle, gdy debuger jest włączony najnowszą wersję Android Studio.
TrackedHttpURLConnection.getHeaderField
awarie iNullPointerException
Więcej informacji można znaleźć w Android Studio Bumblebee Patch 3 na blogu.
Android Studio Bumblebee | Poprawka 2 z 2021.1.1 (luty 2022 r.)
Ta aktualizacja zawiera następujące poprawki błędów:
- Kompilacja C++
ModelCache.safeGet(androidProjectResult.androidProject::getNdkVersion, "")
nie może być wartością null
- Edytor kodu
- Błąd w szablonach transmisji na żywo w Android Studio –
className()
wyrażenie nie rozpoznaje nazwy klasy
- Błąd w szablonach transmisji na żywo w Android Studio –
- D8/R8
java.lang.NoSuchMethodError
: brak metody statycznej$jacocoInit
- Test Androida został uszkodzony z powodu błędu Mockito
- Potrzebne obejście w przypadku uszkodzonej implementacji CAS w interfejsie API 31
- Klasy oznaczone jako zamknięte nie są obsługiwane
NullPointerException
po włączeniu klasy poziomej scalanie w ChromeAbstractMethodError
po scaleniu metody wirtualnej- Nie udało się zweryfikować ramek stosu z powodu nieprawidłowego typu Out-class w klasie init
- Dane wejściowe DEX używają niezdefiniowanego rejestru
- W wersji
StringBuilderOptimizerAnalysisTest
występuje błąd gałęzie - Niedeterminizm w R8
- Wdrożenie
- Nie można uruchomić projektu aplikacji właściciela urządzenia,
Couldn't terminate the existing process for
komunikat o błędzie
- Nie można uruchomić projektu aplikacji właściciela urządzenia,
- Narzędzia do projektowania
- Gdy włączone są nieprzejściowe klasy R, podglądy tworzenia wiadomości nie znajdują zasobów z innych modułów
- Studio zawiesza się podczas kompilacji.
- Wbudowany emulator
- Inne ulepszenia w zakresie wydajności i stabilności.
- Importuj/synchronizuj
- Błąd IDE podczas uruchamiania Bumblebee: wyjściowy plik kompilacji listy to nie
dostępny dla typu wyjściowego pliku APK w
IdeBuildTasksAndOutputInformationImp
- Błąd IDE podczas uruchamiania Bumblebee: wyjściowy plik kompilacji listy to nie
dostępny dla typu wyjściowego pliku APK w
- IntelliJ
- Zmienne env niepochodzące z aplikacji uruchamianych z docku z systemem Mac OS X Monterey Dock
- Jetpack (androidx) > Nawigacja
- Uaktualnienie SafeArgs, aby opierało się na najnowszej stabilnej wersji AGP
- Okna narzędziowe
- Nie można uruchomić Menedżera urządzeń Android
- Inspektor sieci w BumbleBee nie wyświetla odpowiedzi interfejsu API w czytelnym formacie
Więcej informacji można znaleźć w Android Studio Bumblebee Patch 2 – post na blogu.
Android Studio Bumblebee | Poprawka 1.1.1 z 2021 r. (luty 2022 r.)
Ta drobna aktualizacja zawiera następujące poprawki błędów:
- Emulator
- Po przejściu na Bumblebee nie można połączyć się z umieszczonym emulatorem Mac M1
- IntelliJ
- Zmienne env niepochodzące z aplikacji uruchamianych z docku z systemem Mac OS X Monterey Dock
Więcej informacji można znaleźć w Android Studio Bumblebee Patch 1 – post na blogu.