กลับหน้ารวมบทความ
TUTORIAL

ADB Shortcut Keys Cheat Sheet

คำสั่ง ADB ที่ใช้จริงทุกวันกับ BoxPhone

Sikrid Team2026-04-266 นาที
Reference สั้นๆ คำสั่ง ADBที่ใช้กับ BoxPhone จริงทุกวัน — ไม่ใช่ทุกคำสั่งใน docs ของ Google แต่เลือกเฉพาะที่ ใช้บ่อยและจำเป็น

การจัดการเครื่อง (Device)

adb devices -l                  # ดูเครื่องทั้งหมด พร้อม model
adb -s <SERIAL> get-state        # เช็คสถานะ
adb -s <SERIAL> reboot           # รีบูตเครื่อง
adb -s <SERIAL> reboot recovery  # รีบูตเข้า recovery
adb kill-server                  # ปิด server
adb start-server                 # เปิด server ใหม่

Input — กด swipe พิมพ์

# กดที่จอ
adb shell input tap <X> <Y>

# Swipe (X1 Y1 X2 Y2 duration_ms)
adb shell input swipe 540 1500 540 500 300

# พิมพ์ข้อความ (ภาษาอังกฤษเท่านั้น)
adb shell input text "hello"

# กดปุ่ม keyevent ที่ใช้บ่อย
adb shell input keyevent 3     # HOME
adb shell input keyevent 4     # BACK
adb shell input keyevent 26    # POWER
adb shell input keyevent 82    # MENU (ปลด lockscreen)
adb shell input keyevent 187   # APP_SWITCH
adb shell input keyevent 24    # VOLUME_UP
adb shell input keyevent 25    # VOLUME_DOWN

การจัดการแอป

# ติดตั้ง APK
adb install app.apk
adb install -r app.apk           # reinstall keep data
adb install -g app.apk           # auto grant permissions

# ลบแอป
adb uninstall com.example.app

# ดูแอปที่ติดตั้ง
adb shell pm list packages
adb shell pm list packages -3    # third-party only

# เปิดแอป (สั้นที่สุด)
adb shell monkey -p com.tiktok.android 1

# เปิดแอปด้วย activity เฉพาะ
adb shell am start -n com.tiktok.android/.MainActivity

# Force stop
adb shell am force-stop com.tiktok.android

# Clear data
adb shell pm clear com.tiktok.android

หน้าจอและ Screenshot

# ปลดล็อคจอ
adb shell input keyevent 224     # WAKE
adb shell input keyevent 82      # MENU

# เปิด/ปิดจอ
adb shell input keyevent 26

# Screenshot
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png

# บันทึกหน้าจอ (max 3 นาที)
adb shell screenrecord /sdcard/video.mp4

Network & Connectivity

# เปิด TCP/IP mode (ทำผ่าน USB ครั้งแรก)
adb tcpip 5555
adb connect 192.168.1.42:5555
adb disconnect 192.168.1.42:5555

# ดู IP
adb shell ip addr show wlan0

# เปิด/ปิด Wi-Fi
adb shell svc wifi enable
adb shell svc wifi disable

# Airplane mode
adb shell settings put global airplane_mode_on 1
adb shell am broadcast -a android.intent.action.AIRPLANE_MODE

Batch Script — สั่งหลายเครื่องพร้อมกัน

# Bash loop ทุกเครื่อง
for SERIAL in $(adb devices | awk 'NR>1 {print $1}' | grep -v '^$'); do
  adb -s "$SERIAL" shell input tap 540 1200 &
done
wait

# Reboot all
for SERIAL in $(adb devices | awk 'NR>1 {print $1}' | grep -v '^$'); do
  adb -s "$SERIAL" reboot &
done

Tips การใช้กับเครื่องเยอะ

  • ใช้ & เพื่อรัน parallel แทน sequential — ลดเวลา 10-20 เท่า
  • เก็บ SERIAL list ใน file — ไม่ต้อง adb devices ใหม่ทุกครั้ง
  • Set timeout ทุก command — ป้องกัน script ค้างเพราะเครื่องเดียว hang
  • Log output แยกต่อเครื่อง — debug ได้ว่าตัวไหนพัง
  • ใช้ adb -s SERIAL wait-for-device เมื่อเพิ่งเสียบเครื่อง

FAQ

01ADB พิมพ์ภาษาไทยไม่ได้ทำไง+

input text รองรับเฉพาะ ASCII ใช้ adb shell am broadcast เพื่อส่ง intent ที่มี extra string หรือใช้ clipboard injection (set clipboard แล้ว paste)

02tap แล้วไม่ทำงาน+

เช็คว่าจอล็อคอยู่หรือไม่ — ปลดด้วย keyevent 82 ก่อน หรือเปิด 'Stay awake' ใน Developer Options

03หาพิกัด X Y ของปุ่มยังไง+

เปิด Developer Options → Pointer Location หรือใช้ scrcpy + crosshair หรือ uiautomator dump

04สั่งหลายเครื่องพร้อมกันยังไง+

ใช้ bash loop กับ & เพื่อรัน parallel หรือใช้ python script ที่เรียก subprocess ต่อ device serial

อ่านต่อ

อ่านเพิ่มเติม / สอบถาม

อยากเริ่มใช้ BoxPhone จริงๆ — คุยกับทีม Sikrid ได้ตรงนี้

เราออกแบบและประกอบ BoxPhone ในไทย พร้อมระบบ Automation ครบจบใน ระบบเดียว ดูเพิ่มเติมที่ TikTok @sikridphonefarmth