ADB (Android Debug Bridge) เป็นเครื่องมือดีบักสำหรับนักพัฒนา Android นักพัฒนาสามารถใช้ทำการกระทำทางโปรแกรมมากมาย และตรวจสอบพฤติกรรมระบบขณะแอปทำงาน แม้คุณจะเป็นผู้ใช้ทั่วไปหรือไม่ใช่นักพัฒนา ก็มีคำสั่ง ADB บางคำสั่งที่มีประโยชน์ ช่วยให้ทำงานได้มีประสิทธิภาพและประหยัดเวลา นี่คือเทคนิคสุดโค้ลที่ทำได้กับ ADB
1. สำรองข้อมูลโทรศัพท์ทั้งเครื่อง
โหมด Recovery ใน Android ช่วยรีเซ็ตโทรศัพท์และสำรองข้อมูลได้ แต่สำรองได้แค่บนหน่วยความจำโทรศัพท์หรือ SD card ด้วย ADB คุณสามารถสำรองข้อมูลทั้งเครื่องลงคอมพิวเตอร์ได้
ใช้คำสั่งนี้เพื่อสำรองข้อมูลทั้งเครื่อง:
adb backup -all -f /backup/location/file.ab

คำสั่งข้างต้นจะสำรองแอปทั้งหมดและข้อมูลไว้ที่ตำแหน่งไฟล์ที่คุณระบุ ต้องเพิ่มนามสกุล ".ab" ให้ชื่อไฟล์ด้วย
หลังกด Enter คุณต้องปลดล็อกโทรศัพท์และให้สิทธิ์สำรองข้อมูล สามารถตั้งรหัสผ่านเข้ารหัสข้อมูลได้ รหัสผ่านจะใช้ตอนกู้คืนข้อมูล

ตัวเลือกเพิ่มเติม:
- -apk : สำรองไฟล์ .apk
- -noapk : ไม่สำรองไฟล์ .apk
- -obb: สำรองไฟล์ .obb
- -noobb: ไม่สำรองไฟล์ .obb
- -shared: สำรองข้อมูล SD card
- -noshared: ไม่สำรองข้อมูล SD card
- -nosystem: ไม่สำรองแอประบบเมื่อใช้ -all
เพื่อกู้คืนข้อมูลสำรองบนโทรศัพท์ ใช้คำสั่ง:
adb restore <backup-file-location>

ปลดล็อกโทรศัพท์และใส่รหัสผ่านเพื่อกู้คืนข้อมูลสำรอง
2. สำรองแอปเฉพาะตัวและข้อมูลของมัน
หากต้องการสำรองแอปเฉพาะตัวและข้อมูล ADB ช่วยได้เช่นกัน มีประโยชน์เมื่ออยากเล่นเกมบนโทรศัพท์เครื่องอื่นด้วยข้อมูลเกมเก่า หรือเก็บแคชของแอป เช่น YouTube ที่เก็บวิดีโอออฟไลน์เป็นแคช
เพื่อสำรองแอป ต้องรู้ชื่อแพ็กเกจของแอปก่อน หาได้จากคำสั่ง:
adb shell pm list packages
จะแสดงรายชื่อแพ็กเกจทั้งหมดที่ติดตั้ง หาชื่อแพ็กเกจของแอปที่ต้องการสำรองแล้วคัดลอก
ใช้คำสั่งนี้เพื่อสำรองแอปและข้อมูล:
adb backup -f <file-location-for-backup> -apk <package-name>

แทนที่ <package-name> ด้วยชื่อแพ็กเกจที่คัดลอกมา และระบุตำแหน่งไฟล์เหมือนส่วนก่อนหน้า กด Enter จะขออนุญาตสำรองบนโทรศัพท์เหมือนเดิม
เพื่อกู้คืนแอป ใช้คำสั่ง:
adb restore <backup-file-location>
3. ติดตั้งหลายแอพพร้อมกัน
หากคุณมีหลายแอป (ไฟล์ apk) เก็บในโฟลเดอร์ สามารถติดตั้งแบทช์ได้ง่ายด้วย ADB ข้อควรระวัง: จะไม่มีหน้าจอยืนยันบนโทรศัพท์ จึงต้องระวังแอปที่จะติดตั้ง ให้แน่ใจว่าไม่มีมัลแวร์
ใช้คำสั่งนี้เพื่อติดตั้งหลายแอปจากโฟลเดอร์:
for %f in (<folder-path>\*.apk) do adb install "%f"

จะได้ข้อความ "Success" หลังติดตั้งแต่ละแอป
4. ดึงไฟล์ APK จากโทรศัพท์
หากต้องการไฟล์ apk ของแอปจากโทรศัพท์ ADB ดึงให้ได้ง่าย
ก่อนอื่น ต้องรู้ชื่อแพ็กเกจของแอปที่จะดึง ใช้คำสั่ง list package ในส่วนที่ 2 เพื่อหาชื่อแพ็กเกจ
adb shell pm list packages
ต้องหา path หรือตำแหน่งไฟล์ของแพ็กเกจนี้ จะใช้ path นี้ดึง APK
adb shell pm path <package-name>

คัดลอก path วางในคำสั่งด้านล่าง:
adb pull <package-location> <path-on-computer-to-store-APK>

จะเก็บ "base.apk" (ซึ่งเป็น APK ของไฟล์ที่เลือก) บนคอมพิวเตอร์ สามารถเปลี่ยนชื่อได้ภายหลัง
5. บันทึกหน้าจอ
มีแอปบน Play Store ทำได้มาก แต่ทำด้วย ADB ก็สนุก และประหยัดพื้นที่เก็บบนโทรศัพท์ เพราะไม่ต้องติดตั้งแอปเพิ่ม
ใช้คำสั่งนี้เริ่มบันทึกหน้าจอ:
adb shell screenrecord <folder-path/filename.mp4>

Path ในคำสั่งควรเป็นหน่วยความจำโทรศัพท์หรือ SD card มีข้อจำกัด: ADB บันทึกได้สูงสุด 3 นาที หากต้องการหยุดก่อน กด "Ctrl + C" สามารถเพิ่มพารามิเตอร์ -time-limit <number-of-seconds> เพื่อตั้งเวลาล่วงหน้าได้
6. เปลี่ยน DPI ของหน้าจอ
DPI (Dots per Inch) คือค่าที่ Android ใช้กำหนดขนาดภาพและไอคอนแอปที่เหมาะสม ค่านี้สามารถเปลี่ยนได้เพื่อแสดงผลใหญ่/ซูมเข้า หรือเล็กลงตามต้องการ ดูภาพด้านซ้ายคือ 480 dpi ปกติ ขวาคือ 180 dpi

เช็ค DPI ปัจจุบันบนโทรศัพท์:
adb shell wm density
เปลี่ยน DPI โดยใส่ค่าต่อท้าย:
adb shell wm density <value>

จะเห็นการเปลี่ยนแปลงบนหน้าจอทันที ไม่ต้องรีบูท สามารถกลับค่า DPI เดิมได้ด้วยคำสั่งเดียวกัน
7. เชื่อมต่อ ADB ผ่าน WiFi
ยุคนี้ทุกอย่างไร้สาย ทำไม ADB ไม่เชื่อมต่อแบบไร้สาย? ทำได้ง่าย แต่ต้องเชื่อม USB ก่อนเพื่อเปิดใช้งาน เปิด WiFi บนโทรศัพท์และคอมพิวเตอร์ ทั้งสองต้องอยู่ในเครือข่ายเดียวกัน
ใช้คำสั่งนี้ทำให้ ADB ทำงานในโหมด TCP/IP:
adb tcpip 5555
หา IP address ของโทรศัพท์จาก "Settings -> About -> Status -> IP address" ใส่ในคำสั่งถัดไป
ใช้คำสั่งเชื่อมต่อ ADB แบบไร้สาย:
adb connect <your-ip-address>
สามารถถอดสาย USB ได้แล้ว
เช็คว่าเชื่อมต่อไร้สายแล้วหรือยัง:
adb devices

8. ดูสถิติและข้อมูลระบบ
มีคำสั่ง shell ชื่อ dumpsys ที่นักพัฒนาใช้เช็คพฤติกรรมระบบขณะแอปทำงาน คุณสามารถใช้คำสั่งนี้ดูข้อมูลระบบโทรศัพท์และฮาร์ดแวร์ต่างๆ เพื่อความรู้
ใช้คำสั่งนี้ดู sub-commands ทั้งหมดที่ใช้กับ dumpsys ได้:
adb shell dumpsys | grep "DUMP OF SERVICE"
ใช้ sub-commands ต่างๆ กับ dumpsys เพื่อดูข้อมูลฮาร์ดแวร์ต่างๆ คำสั่งต่อไปนี้แสดงข้อมูลแบตเตอรี่:
adb shell dumpsys battery

ลองเล่น sub-commands อื่นๆ เพื่อดูข้อมูลฮาร์ดแวร์และสถานะโทรศัพท์เพิ่มเติม
สรุป
มีอะไรทำได้กับ ADB เยอะมาก และไม่ต้องเป็นนักพัฒนาก็ลองเล่นได้ คุณสามารถดูคำสั่ง ADB ทั้งหมดที่หน้านี้ได้อีก ADB ยิ่งมีประโยชน์หากคุณรูทโทรศัพท์แล้ว Root access จะเปิดโอกาสเทคนิคมากมายกับ ADB บนโทรศัพท์ของคุณ
หากเจอข้อผิดพลาดหรือปัญหาในการใช้ ADB แจ้งได้ในคอมเมนต์ด้านล่าง