ADB.exe ล้าสมัยและมีปัญหาประสิทธิภาพการทำงานที่ร้ายแรง


265

ฉันใช้ Windows 10 และเมื่อฉันเปิดตัว Virtual Device Emulator ใน Android Studio ฉันจะได้รับข้อความซึ่งอ่าน:

"ไบนารี ADB ที่ C: \ Users \ siviw \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe ล้าสมัยและมีปัญหาประสิทธิภาพการทำงานที่รุนแรงกับ Android Emulator โปรดอัปเดตเป็นเวอร์ชันใหม่เพื่อให้แอปเร็วขึ้นอย่างมีนัยสำคัญ / การถ่ายโอนไฟล์ "

ฉันเป็นนักพัฒนาใหม่ที่มีประสบการณ์น้อย ฉันต้องอัปเดตอะไรเป็นเวอร์ชันที่ใหม่กว่าเพื่อให้ข้อความไม่แสดงอีกต่อไป


36
หากคุณติดตั้ง ADB เวอร์ชันล่าสุดแล้วและยังได้รับข้อผิดพลาดนี่เป็นปัญหาที่ทราบแล้ว Google ยังไม่ได้ให้บริการ ADB อื่น ๆ คลิกที่ตัวเลือก "ไม่แสดงอีก" และดำเนินการต่อ
Sunil Kumar

7
มันน่าทึ่งมากที่พวกเขาจะเพิ่มข้อความแสดงข้อผิดพลาดลงในรหัสของพวกเขาแล้ว ... ปล่อยมันอย่างนั้น !!!
Andrew Koster

คำตอบ:


315

ฉันใหม่สำหรับ Android เช่นกัน คำตอบของ dkalev นั้นถูกต้อง แต่ไม่ได้อธิบายมากสำหรับผู้ใช้ใหม่ ฉันได้ระบุขั้นตอนไว้ด้านล่าง

  1. กด Shift สองครั้งเพื่อเปิดช่องค้นหา
  2. พิมพ์ SDK Manager
  3. ในผลลัพธ์ที่แสดงคลิก "ตัวจัดการ SDK"
  4. ในหน้าต่างที่เปิดขึ้นให้คลิกแท็บที่สอง "เครื่องมือ SDK" คุณควรเห็นว่ามีการอัปเดตสำหรับ SDK Build-Tools ในบรรทัดแรก
  5. ทำเครื่องหมายที่ "แสดงรายละเอียดแพ็คเกจ" ที่มุมขวาล่าง
  6. เลื่อนไปที่รายการสุดท้ายภายใต้ "เครื่องมือสร้าง SDK" และทำเครื่องหมายที่ช่อง (ของฉันคือ 28.0.1)
  7. คลิก "สมัคร"
  8. ในกล่องโต้ตอบที่ปรากฏขึ้นให้คลิก "ตกลง"
  9. เมื่อตัวติดตั้งเสร็จสิ้นให้คลิก "เสร็จสิ้น"
  10. ยกเลิกการเลือก "แสดงรายละเอียดแพ็คเกจ" และดูที่ "เครื่องมือสร้าง SDK Android" (บรรทัดแรก) ไม่ควรมีการอัปเดตและควรพูดว่า "ติดตั้งแล้ว"
  11. คลิก "ตกลง" เพื่อปิดตัวจัดการ SDK

นั่นคือทั้งหมดที่มีให้มัน

การเข้ารหัสที่มีความสุข


ควรมี "ขั้นตอนที่ 6 ข: คลิกเวอร์ชันหลักสุดท้ายในแต่ละเวอร์ชันที่ยังไม่ได้ติดตั้ง" (เช่น 27.0.3, 26.0.3 เป็นต้น)
Dale

6
หากวิธีนี้ใช้ไม่ได้ให้ตรวจสอบตัวจัดการงานสำหรับ adb.exe มากกว่าหนึ่งอินสแตนซ์ แอพอื่น ๆ นอกเหนือจาก Android Studio อาจเริ่มต้นอินสแตนซ์ของโปรแกรมนี้
Dale

1
แต่เครื่องมือสร้าง SDK ของฉันเป็นรุ่นล่าสุด
Monica Aspiras Labbao

3
รายการของฉันเรียงลำดับล่าสุดไปเก่าที่สุดดังนั้นตอนนี้จึงเป็นรายการแรก ฉันจะทราบได้อย่างไรว่าฉันได้รับคำเตือนถึงแม้ว่าเวอร์ชั่นที่ใหม่กว่าจะเป็นรุ่นเบต้าทั้งหมด ฉันสงสัยว่ามันเป็นแง่ดีที่จะอ้างว่าเวอร์ชันใหม่นั้นเร็วกว่าเสมอ ฉันพนันว่าพวกเขาเขียนข้อความนั้นสำหรับการอัปเกรดหนึ่งครั้งแล้วก็ไม่เคยเปลี่ยนเลย you're out of date, catch upมันอาจเป็นเพียงแค่มันหมายถึง
Sinc

1
หากคุณเห็นมากกว่าหนึ่ง sdk ที่เลือก ลบ SDK เวอร์ชั่นเก่าทั้งหมดโดยไม่เลือกเลย ปล่อยเฉพาะเวอร์ชันล่าสุดที่เลือกไว้และทำตามขั้นตอนด้านบน สิ่งนี้ใช้ได้สำหรับฉัน
Val

57

สำหรับฉันอัปเดต SDK ไม่ได้ช่วย ฉันแก้ปัญหานี้โดยการยกเลิกการเลือกตัวเลือกอีมูเลเตอร์ "ใช้ตำแหน่ง ADB ที่ตรวจพบ" ให้มันลอง. ใช้ตำแหน่ง ADB ที่ตรวจพบ


22
ฉันสามารถจูบคุณได้
Chris Sprague

1
มันก็ใช้ได้กับฉันเช่นกัน ฉันมี adb.exe เพียงสำเนาเดียวในระบบทั้งหมดของฉันและเป็นไฟล์ล่าสุด เฉพาะการยกเลิกการตรวจสอบตัวเลือกนี้ลบข้อผิดพลาดให้ฉัน
หุ่นยนต์

40

ฉันมีปัญหาเดียวกันและแก้ไขได้โดยอัปเดตเครื่องมือสร้าง SDK ของ Android เปิดตัวจัดการ SDK ในสตูดิโอ Android (ตัวเลื่อนคู่และตัวจัดการ SDK ประเภท) จากนั้นบนแท็บที่สอง (เครื่องมือ SDK) อัปเดตเครื่องมือสร้าง SDK ของ Android และข้อผิดพลาดควรหายไป


23

17-01-2019

มันใช้งานได้สำหรับฉัน เพียงแค่เปิดแล้วมันแสดงให้เห็นว่าAndroid SDK Manager 4 Updates Availableดังนั้นฉันเพิ่งอัปเดตและไม่มีคำเตือนเพิ่มเติม

ป้อนคำอธิบายรูปภาพที่นี่


1
ขอบคุณฉันคิดว่าวิธีที่ง่ายที่สุด ที่สามารถแก้ไขปัญหาที่ฉันมีใน Android สตูดิโอพร้อม Logcat เมื่อผมใช้ scrcpy.adb ติดตั้งจากสแน็ป
Bruno L.

หรือถ้าคุณใช้รหัส VS และใช้ SDK Manager ของ Android Studio เท่านั้นคุณสามารถใช้ขั้นตอนได้ที่นี่
Bang Fady

18

นี่เป็นข้อผิดพลาดอายุปี

ตรวจสอบเวอร์ชัน adb ของคุณดังนี้: (กำหนดเส้นทาง adb พร้อมกับข้อผิดพลาดเอง)

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

ผลลัพธ์:

สะพานดีบั๊ก Android รุ่น 1.0.41

รุ่น 29.0.4-5871666

ติดตั้งเป็น C: \ Users \ sunil \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe

หมายความว่า adb นี้มาจาก sdk platform tools ล่าสุด 29.0.4 ตรวจสอบเวอร์ชั่นล่าสุดจากเว็บไซต์อย่างเป็นทางการที่นี่

หากคุณติดตั้ง ADB เวอร์ชันล่าสุดแล้วและยังได้รับข้อผิดพลาดนี่เป็นปัญหาที่ทราบแล้ว Google ยังไม่ได้ให้บริการ ADB อื่น ๆ คลิกที่ตัวเลือก "ไม่แสดงอีก" และดำเนินการต่อ


15

มีปัญหาเดียวกัน แต่ในกรณีของฉันการแก้ไขแตกต่างกันเล็กน้อยเนื่องจากไม่มีการอัปเดตที่แสดงสำหรับเครื่องมือ Android SDK ฉันเปิดตัวจัดการอุปกรณ์เสมือนและตระหนักว่าตัวจำลองกำลังเรียกใช้ API 27 ตรวจสอบกลับมาในตัวจัดการ SDK และฉันไม่ได้ติดตั้งเครื่องมือ API 27 SDK เลย การติดตั้ง v 27 แก้ปัญหาให้ฉันได้


10

ในกรณีของฉันสิ่งที่ลบข้อความนี้คือ (หลังจากอัปเดตทุกอย่าง) ลบตัวจำลองและสร้างขึ้นใหม่ การอัปเดต adb ด้วยตนเองไม่ได้แก้ปัญหานี้สำหรับ หรืออัปเดตผ่าน Android studio Gui ในกรณีของฉันดูเหมือนว่าตั้งแต่อิมูเลเตอร์ถูกสร้างด้วยส่วนประกอบ "เก่า" มันแสดงข้อความต่อไป ฉันมีสามอีมูเลเตอร์เพียงแค่ลบพวกมันทั้งหมดและสร้างอันใหม่ สำหรับความประหลาดใจของฉันเมื่อมันเริ่มข้อความไม่มาก

ไม่สามารถบอกได้ว่าประสิทธิภาพดีขึ้นหรือไม่ ข้อความไม่ได้เกิดขึ้น นอกจากนี้ฉันยังมีทุกสิ่งที่อัปเดตเป็นรุ่นล่าสุด (emulators และ sdk)


2
เพียงเพิ่มในเรื่องนี้ หลังจากข้อความออกไป ฉันสร้างตัวจำลอง sdk ที่เก่ากว่า (เก่ากว่าปัจจุบัน) และมันก็แสดงข้อความอีกครั้งด้วยอีมูเลเตอร์นั้น แต่แล้วบางแห่งในอนาคตข้อความหยุดแสดงเลย หากคุณมีปัญหานี้เป็นแม่มดตามล่าหาฉัน และไม่สามารถพูดได้ว่ามันจะไม่ปรากฏอีกในอนาคต ในกรณีของฉันฉันจะทุก ๆ คราวแล้ว (หลังจากอัปเดต sdk) จะพยายามลบและสร้างอีมูเลเตอร์เพียงเพื่อให้พวกเขามีการแก้ไขในปัจจุบัน
soynerdito

โดย "ฉันมีตัวจำลองสามตัว" คุณหมายถึงคุณมีไบนารีตัวจำลองแบบเดียว แต่นิยาม AVD (อุปกรณ์เสมือน Android) สามตัวในตัวจัดการ AVD ของคุณหรือไม่
ralfoide

สถานการณ์นี้หลังจากสองสามวันกลับมาตามล่าฉัน ตอนนี้ฉันส่วนใหญ่ใช้อุปกรณ์ดังนั้นฉันไม่แน่ใจว่าปัญหายังคงอยู่หลังจากการปรับปรุงมากมาย
soynerdito

มันก็ใช้ได้กับฉันเช่นกัน หากไม่มีอะไรใช้งานได้ให้ลองลบอุปกรณ์เสมือนแล้วเพิ่มอีกครั้งและลองตรวจสอบว่าคุณมี sdk ที่คุณต้องการติดตั้งอยู่แล้วเพราะคุณสามารถทำซ้ำ SDK เดียวกันได้
Mycodingproject

5

(คุณบอกว่าคุณยังใหม่กับ Android Studio) ดังนั้นฉันขอแนะนำให้กดปุ่ม Android Studio> ความช่วยเหลือ> ตรวจสอบอัปเดต ...ปุ่มที่จะอัปเดตสภาพแวดล้อมของคุณ


3

ฉันแก้ไขข้อผิดพลาดนี้ได้โดยถอนการติดตั้งเครื่องมือสร้าง SDK รุ่นเก่าสองรุ่นโดยปล่อยเฉพาะรุ่นล่าสุด


2

ไม่มีคำตอบที่ได้รับการโหวตสูงสุดทำงานให้ฉันยกเว้นเมื่อฉันไม่เลือก "ใช้ตำแหน่ง ADB ที่ตรวจพบ" ตามที่กล่าวไว้ข้างต้นโดย @ 褚阳光 โชคดีที่ในกรณีของฉันข้อความไม่ปรากฏขึ้นแม้ว่าฉันจะเปิดใช้งานอีกครั้ง กล่าวอีกนัยหนึ่งปัญหาอาจแก้ไขได้ด้วยการเริ่มต้น "ใช้ตำแหน่ง ADB ที่ตรวจพบ" :)


2

ฉันมีปัญหาเดียวกันและแก้ไขได้โดยอัปเดตเครื่องมือสร้าง SDK Android ใน Android Studio

ขั้นตอนที่ 1 - ผู้จัดการกะคู่และประเภท SDK นี้จะเปิดตัวจัดการ SDK

ขั้นตอนที่ 2 - จากนั้นบนแท็บที่สอง (เครื่องมือ SDK) อัปเดตเครื่องมือสร้าง SDK Android และข้อผิดพลาดควรหายไป

หากวิธีนี้ไม่ได้ผลให้ตรวจสอบตัวเลือกในแท็บuse detected Adb toolการตั้งค่าในแท็บการตั้งค่า


1

ก่อนอื่นคุณต้องตรวจสอบ SDK ที่ Emulator ของคุณใช้อยู่และตามที่ @kuya แนะนำให้คุณต้องทำตามขั้นตอนเหล่านั้นและติดตั้ง SDK Build Tool เวอร์ชันล่าสุด สมมติว่า Emulator ของคุณใช้ SDK 27 แล้วคุณต้องติดตั้งล่าสุดในชุดนั้น สำหรับฉันมันคือ 27.0.3 หลังจากนั้นข้อผิดพลาดก็หายไป


1

ลองอัปเดตรายการเครื่องมือ SDK ของคุณแล้วลบตัวจำลองที่สร้างขึ้นทั้งหมดในปัจจุบันและสร้างใหม่อีกครั้ง มันใช้งานได้สำหรับฉัน


ทำงานให้ฉันด้วย - ขอบคุณ! การอัปเดตตามที่กล่าวถึงในโซลูชันด้านบนไม่ได้ช่วย
juergi


0

ฉันทำตามคำตอบแล้ว แต่ขั้นตอนสุดท้ายของเวทย์มนตร์ก็คือการลบสภาพแวดล้อมเสมือนจริงที่มีอยู่และสร้างใหม่


0

นี่อาจฟังดูเป็นเรื่องปกติ แต่ฉันได้รับข้อผิดพลาดเดียวกัน แต่เพิ่งอัปเดตและมันทำงานได้ทันทีโดยไม่มีข้อผิดพลาด ฉันแนะนำให้ทุกคนลองอัปเดตก่อน


0

หากคุณติดอยู่หลังจากทำตามแต่ละขั้นตอนที่อธิบายไว้ข้างต้นฉันจะแนะนำให้คุณรวมคำตอบมากกว่าหนึ่งคำ คำตอบของ @Kuya และ @ 褚阳光เหมาะกับฉัน ลองพวกเขา ฉันสามารถอธิบายเพิ่มเติมได้หากขั้นตอนต่าง ๆ ให้ผลลัพธ์ที่ดีแก่คุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.