ADB.exe jest przestarzały i ma poważne problemy z wydajnością


265

Korzystam z systemu Windows 10 i po uruchomieniu emulatora urządzeń wirtualnych w Android Studio wciąż pojawia się komunikat:

„Plik binarny ADB w C: \ Users \ siviw \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe jest przestarzały i ma poważne problemy z wydajnością emulatora Androida. Zaktualizuj do nowszej wersji, aby uzyskać znacznie szybszą aplikację / transfer plików".

Jestem nowym programistą z niewielkim doświadczeniem. Co muszę zaktualizować do nowszej wersji, aby komunikat nie był już wyświetlany?


36
Jeśli masz już zainstalowaną najnowszą wersję ADB i nadal pojawia się błąd, jest to znany problem. Google nie dostarczył jeszcze żadnego ADB. Kliknij opcję „nigdy więcej nie pokazuj” i kontynuuj.
Sunil Kumar

7
To niesamowite, że dodali ten komunikat o błędzie do swojego kodu, a następnie ... opublikowali go w ten sposób !!!
Andrew Koster

Odpowiedzi:


315

Jestem również nowy na Androida. Odpowiedź dkalev jest poprawna, ale niezbyt opisowa dla nowego użytkownika. Przedstawiłem poniższe kroki.

  1. Dwukrotnie Shift, aby otworzyć pole wyszukiwania
  2. Wpisz SDK Manager
  3. W wyświetlonych wynikach kliknij „Menedżer SDK”
  4. W oknie, które zostanie otwarte, kliknij drugą kartę „Narzędzia SDK”. Powinieneś zobaczyć, że w pierwszym wierszu dostępna jest aktualizacja narzędzi kompilacji SDK
  5. Zaznacz „Pokaż szczegóły pakietu” w prawym dolnym rogu
  6. Przewiń do ostatniego elementu w „SDK Build-Tools” i zaznacz pole. (Mój był 28.0.1)
  7. Kliknij „Zastosuj”
  8. W wyskakującym oknie dialogowym kliknij „OK”
  9. Po zakończeniu instalatora kliknij „Zakończ”
  10. Odznacz „Pokaż szczegóły pakietu” i spójrz na „Narzędzia do budowania zestawu SDK Androida” (pierwsza linia). Aktualizacja nie powinna być dostępna i powinna zawierać komunikat „Zainstalowano”
  11. Kliknij „OK”, aby zamknąć Menedżera SDK

To wszystko.

Szczęśliwego kodowania


Czy powinien istnieć „Krok 6b: kliknij także ostatnią główną wersję w każdej, która nie jest jeszcze zainstalowana” (czyli 27.0.3, 26.0.3 itd.)?
Dale

6
Jeśli to nie zadziała, sprawdź w Menedżerze zadań więcej niż jedno wystąpienie programu adb.exe; inne aplikacje oprócz Android Studio mogą uruchamiać instancje tego programu.
Dale

1
Ale potem moje narzędzia do budowania zestawu SDK mają najnowszą wersję
Monica Aspiras Labbao

3
Moja lista jest posortowana od najstarszych do najstarszych, więc teraz jest to pierwszy element. Zauważę jednak, że otrzymuję ostrzeżenie, mimo że wszystkie nowsze wersje to wersje beta. Podejrzewam, że optymistyczne jest również twierdzenie, że nowa wersja jest zawsze znacznie szybsza. Założę się, że napisali tę wiadomość dla jednego konkretnego ulepszenia, a potem nigdy go nie zmienili. To prawdopodobnie naprawdę oznacza you're out of date, catch up.
Sinc

1
Jeśli zobaczysz więcej niż jeden wybrany pakiet SDK. Usuń wszystkie stare wersje zestawu SDK, odznaczając je. Pozostaw tylko najnowszą wybraną wersję i wykonaj powyższe kroki. To zadziałało dla mnie.
Val

56

Dla mnie aktualizacja SDK nie pomaga. Rozwiązuję ten problem, odznaczając opcję emulatora „Użyj wykrytej lokalizacji ADB”. Spróbuj. użyj wykrytej lokalizacji ADB


22
Mogę cię pocałować
Chris Sprague,

1
To również działało dla mnie. Mam tylko 1 kopię programu adb.exe w całym systemie i jest to najnowsza wersja. Dopiero odznaczenie tej opcji usunęło błąd.
automat

40

Miałem ten sam problem i rozwiązałem go, aktualizując narzędzia do budowania zestawu SDK systemu Android. Otwórz menedżera SDK w Android studio (podwójna zmiana i wpisz SDK manager). Następnie na drugiej karcie (Narzędzia zestawu SDK) zaktualizuj narzędzia kompilacji zestawu SDK systemu Android i komunikat o błędzie powinien zniknąć.


23

17-01-2019

To działa dla mnie. Właśnie otworzyłem Android SDK ManagerTo pokazało 4 Updates Available. Więc właśnie zaktualizowałem to i nie więcej niż ostrzeżenie.

wprowadź opis zdjęcia tutaj


1
Dziękuję, myślę, że najprostszy sposób. To może naprawić problem, który miałem w Android Studio z Logcat, gdy korzystam ze skryptu.adb zainstalowanego od razu .
Bruno L.,

lub jeśli używasz VS Code i używasz tylko SDK Managera w Android Studio, możesz wykonać czynności tutaj
Bang Fady

18

To jest stary błąd.

Sprawdź swoją wersję adb w następujący sposób: (ścieżka adb podana jest z błędem)

C:\Users\<your_user_name_>\AppData\Local\Android\Sdk\platform-tools\adb.exe --version

wynik :

Android Debug Bridge w wersji 1.0.41

Wersja 29.0.4-5871666

Zainstalowany jako C: \ Users \ sunil \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe

Oznacza to, że ten adb pochodzi z najnowszych narzędzi platformy SDK 29.0.4. Sprawdź najnowszą wersję z oficjalnej strony tutaj .

Jeśli masz już zainstalowaną najnowszą wersję ADB i nadal pojawia się błąd, jest to znany problem. Google nie dostarczył jeszcze żadnego ADB. Kliknij opcję „nigdy więcej nie pokazuj” i kontynuuj.


15

Miałem ten sam problem, ale w moim przypadku poprawka była nieco inna, ponieważ nie wyświetlały się żadne aktualizacje narzędzi zestawu SDK systemu Android. Otworzyłem Menedżera urządzeń wirtualnych i zdałem sobie sprawę, że mój emulator ma API 27. Sprawdziłem ponownie w Menedżerze SDK i nie miałem w ogóle zainstalowanych Narzędzi API 27 SDK. Zainstalowanie v 27 rozwiązało problem dla mnie.


10

W moim przypadku tym, co usunęło tę wiadomość, było (po zaktualizowaniu wszystkiego) usunięcie emulatora i utworzenie nowego. Ręczna aktualizacja adb nie rozwiązała tego. Ani aktualizacji za pośrednictwem Android GUI studio. W moim przypadku wydaje się, że skoro emulator został utworzony ze „starych” komponentów, wyświetla komunikat. Miałem trzy emulatory, po prostu usunąłem je wszystkie i utworzyłem nowy. Ku mojemu zdziwieniu, kiedy się zaczęło, wiadomości już nie było.

Nie można stwierdzić, czy wydajność jest lepsza, czy nie. Wiadomość po prostu się nie pojawiła. Również mam wszystko zaktualizowane do najnowszej wersji (emulatory i sdk).


2
Wystarczy dodać w tej sprawie. Po tym, jak wiadomość wyszła. Stworzyłem starszy emulator SDK (starszy niż bieżący). I pokazał komunikat ponownie z tym konkretnym emulatorem. Ale gdzieś w przyszłości komunikat w ogóle przestanie się wyświetlać. Jeśli masz problem, to polowanie na czarownice jest dla mnie. I nie mogę powiedzieć, że nie pojawi się ponownie w przyszłości. W moim przypadku będę co jakiś czas (po aktualizacjach SDK) spróbował usunąć i ponownie utworzyć emulatory, aby zachować je przy bieżącej wersji.
soynerdito

Przez „miałem trzy emulatory” miałeś na myśli, że masz jeden binarny emulator, ale trzy definicje AVD (urządzenia wirtualnego z systemem Android) w swoim menedżerze AVD?
ralfoide

Ta sytuacja po kilku dniach wróciła, by mnie polować. Teraz używam głównie urządzeń, więc nie jestem pewien, czy problem nie ustąpi po tylu aktualizacjach.
soynerdito

To również działało dla mnie. Jeśli nic nie działa, po prostu spróbuj usunąć urządzenie wirtualne i dodaj ponownie i spróbuj sprawdzić, czy masz już zainstalowany pakiet SDK, którego potrzebujesz, ponieważ możesz mieć duplikaty tych samych zestawów SDK.
Mycodingproject

5

(Wspomniałeś, że jesteś nowy w Android Studio), więc zalecamy naciśnięcie przycisku Android Studio> Pomoc> Sprawdź dostępność aktualizacji ... , który zaktualizuje twoje środowisko.


3

Rozwiązałem ten błąd, odinstalowując dwie starsze wersje narzędzi do kompilacji SDK, pozostawiając tylko najnowszą.


2

Żadna z najczęściej głosowanych odpowiedzi nie działała dla mnie, z wyjątkiem przypadków odznaczenia „Użyj wykrytej lokalizacji ADB”, jak wspomniano powyżej przez @ 褚 阳光. Na szczęście w moim przypadku wiadomość nie pojawiła się, nawet gdy ją ponownie włączyłem. Innymi słowy, problem można rozwiązać, uruchamiając ponownie „Użyj wykrytej lokalizacji ADB” :)


2

Miałem ten sam problem i rozwiązałem go, aktualizując narzędzia do budowania zestawu SDK systemu Android w Android Studio.

krok 1 - Podwójne przesunięcie i wpisz menedżera SDK, otworzy się menedżer SDK

krok 2 - Następnie na drugiej karcie (Narzędzia zestawu SDK) zaktualizuj narzędzia kompilacji zestawu SDK systemu Android i komunikat o błędzie powinien zniknąć.

jeśli to nie rozwiąże, zaznacz opcję w zakładce Ustawienia, use detected Adb toolw zakładce Ustawienia


1

Najpierw musisz sprawdzić, którego zestawu SDK używa Twój emulator, a ponieważ @kuya zasugerowało, musisz wykonać te kroki i zainstalować najnowszą wersję tego narzędzia do kompilacji SDK. Załóżmy, że Twój emulator używa zestawu SDK 27, a następnie musisz zainstalować najnowszą wersję z tej serii. Dla mnie było to 27.0.3. Potem błąd zniknął.


1

Spróbuj zaktualizować elementy Narzędzi SDK, a następnie usuń wszystkie aktualnie utworzone emulatory i utwórz ponownie. mi to pasuje


Pracowałem też dla mnie - dziękuję! Aktualizacja, jak wspomniano w powyższych rozwiązaniach, nie pomogła
juergi

0

Spróbuj przywrócić ustawienia fabryczne do urządzenia wirtualnego z poziomu Menedżera urządzeń Android

wprowadź opis zdjęcia tutaj


0

Podążyłem za odpowiedzią, ale magicznym ostatnim krokiem było usunięcie istniejącego środowiska wirtualnego i utworzenie nowego.


0

Może to zabrzmieć normalnie, ale otrzymywałem ten sam błąd, ale właśnie go zaktualizowałem i działało teraz bez żadnego błędu. Sugeruję, aby każdy najpierw spróbował aktualizacji.


0

Jeśli utkniesz po wykonaniu każdego z kroków opisanych powyżej, zasugeruję, aby połączyć więcej niż jedną odpowiedź. Odpowiedzi @ Kuya i @ 褚 阳光 działały dla mnie. Wypróbuj je. Mogę wyjaśnić więcej, jeśli kroki przynoszą wyniki.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.