โมดูล adbd จัดการเซสชันการแก้ไขข้อบกพร่องของ adb ในบรรทัดคำสั่งและ IDE โมดูลนี้ อัปเดตได้ ซึ่งหมายความว่าสามารถรับการอัปเดตฟังก์ชันการทำงานภายนอก วงจรการเปิดตัว Android ปกติได้
การแยก adbd ออกเป็นโมดูลช่วยให้เราสามารถปรับปรุงประสิทธิภาพ (การปรับปรุงที่ทำในปีที่ผ่านมาและการปรับปรุงใหม่ที่กำลังจะเกิดขึ้น) การแก้ไขข้อบกพร่อง (เช่น ข้อบกพร่องที่ทำให้แบตเตอรี่หมดหลายอย่าง รวมถึง adbd ที่ทำงาน 100% ของ CPU จนกว่าแบตเตอรี่จะหมด) และฟีเจอร์ที่ยังไม่ได้ย้อนกลับไปยัง Android เวอร์ชันเก่าได้เร็วขึ้น การปรับปรุงดังกล่าวช่วยเพิ่มความน่าเชื่อถือของ adbd ซึ่งมีความสําคัญอย่างยิ่ง สําหรับการทดสอบอัตโนมัติที่ความล้มเหลวอาจทําให้ผู้พัฒนาแอปและ OEM ต้อง เสียบ/รีสตาร์ทอุปกรณ์ที่ออฟไลน์ด้วยตนเอง ปัญหาด้านความน่าเชื่อถือยังส่งผลต่อการตั้งค่าจากโรงงาน (OEM) และการเปิดบอร์ด (ผู้ให้บริการ SoC) ด้วย
ขอบเขตของโมดูล
สําหรับ Android 12 ขึ้นไป โค้ดโมดูล adbd คือ
packages/modules/adbd
สำหรับ Android 11 และต่ำกว่า ขอบเขตของโมดูล adbd
คือ /system/core/adb
และ /system/bin/adbd
รูปแบบโมดูล
โมดูล adbd (com.android.adbd
) อยู่ในรูปแบบ APEX และพร้อมใช้งานสำหรับอุปกรณ์ที่ใช้ Android 11 ขึ้นไป
ทรัพยากร Dependency ของโมดูล
โมดูล adbd ขึ้นอยู่กับสิ่งต่อไปนี้
โปรโตคอลการแก้ไขข้อบกพร่อง Java Debug Wire Protocol (JDWP) ที่มีรันไทม์ Android adbd จะลิงก์กับ
libadbconnection_server
แบบไดนามิกการตรวจสอบสิทธิ์ด้วย
system_server
adbd จะลิงก์แบบไดนามิกกับlibadbd_auth
การปรับแต่ง
โมดูล adbd ไม่รองรับการปรับแต่ง