เรียกใช้แอปในอุปกรณ์ฮาร์ดแวร์

ทดสอบแอป Android บนอุปกรณ์จริงเสมอก่อนที่จะเผยแพร่แอปให้ผู้ใช้ หน้านี้จะอธิบายวิธีตั้งค่าสภาพแวดล้อมการพัฒนาและอุปกรณ์ Android สำหรับการทดสอบและการแก้ไขข้อบกพร่องผ่านการเชื่อมต่อ Android Debug Bridge (ADB)

ตั้งค่าอุปกรณ์สําหรับการพัฒนา

ก่อนเริ่มแก้ไขข้อบกพร่องในอุปกรณ์ ให้เลือกว่าต้องการเชื่อมต่อกับอุปกรณ์โดยใช้สาย USB หรือ Wi-Fi จากนั้นทำดังต่อไปนี้

  1. ในอุปกรณ์ ให้เปิดแอปการตั้งค่า เลือกตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ แล้วเปิดใช้การแก้ไขข้อบกพร่องผ่าน USB (หากมี)

  2. ตั้งค่าระบบให้ตรวจหาอุปกรณ์

    • ChromeOS: ไม่จำเป็นต้องมีการกำหนดค่าเพิ่มเติม
    • macOS: ไม่จำเป็นต้องมีการกำหนดค่าเพิ่มเติม
    • Windows: ติดตั้งไดรเวอร์ USB สำหรับ ADB (หากมี) ดูคู่มือการติดตั้งและลิงก์ไปยังไดรเวอร์ OEM ได้ที่ติดตั้งไดรเวอร์ OEM USB
    • Ubuntu Linux: ตั้งค่าสิ่งต่อไปนี้

      • ผู้ใช้แต่ละรายที่ต้องการใช้ ADB จะต้องอยู่ในกลุ่ม plugdev หากเห็นข้อความแสดงข้อผิดพลาดว่าคุณไม่ได้อยู่ในกลุ่ม plugdev ให้เพิ่มตัวเองลงในกลุ่มโดยใช้คําสั่งต่อไปนี้
      sudo usermod -aG plugdev $LOGNAME
      

      Groups จะอัปเดตเมื่อเข้าสู่ระบบเท่านั้น คุณจึงต้องออกจากระบบเพื่อให้การเปลี่ยนแปลงนี้มีผล เมื่อเข้าสู่ระบบอีกครั้ง คุณสามารถใช้ id เพื่อตรวจสอบว่าคุณอยู่ในกลุ่ม plugdev

      • ระบบต้องติดตั้งกฎ udev ที่ใช้กับอุปกรณ์ แพ็กเกจ android-sdk-platform-tools-common มีชุดกฎ udev เริ่มต้นที่ชุมชนดูแลรักษาสำหรับอุปกรณ์ Android หากต้องการติดตั้ง ให้ใช้คำสั่งต่อไปนี้
      apt-get install android-sdk-platform-tools-common
      

เชื่อมต่อกับอุปกรณ์โดยใช้ USB

เมื่อตั้งค่าและเสียบผ่าน USB แล้ว ให้คลิกเรียกใช้ ใน Android Studio เพื่อสร้างและเรียกใช้แอปในอุปกรณ์

คุณยังใช้ adb เพื่อออกคำสั่งได้ ดังนี้

  • ตรวจสอบว่าอุปกรณ์เชื่อมต่ออยู่โดยเรียกใช้คำสั่ง adb devices จากไดเรกทอรี android_sdk/platform-tools/ หากเชื่อมต่อแล้ว คุณจะเห็นอุปกรณ์ในรายการ
  • ออกคำสั่ง adb พร้อมใช้แฟล็ก -d เพื่อกำหนดเป้าหมายอุปกรณ์

เชื่อมต่ออุปกรณ์โดยใช้ Wi-Fi

Android 11 ขึ้นไปรองรับการติดตั้งใช้งานและการแก้ไขข้อบกพร่องของแอปแบบไร้สายจากเวิร์กสเตชันผ่าน Android Debug Bridge (ADB) ตัวอย่างเช่น คุณสามารถทำให้แอปที่แก้ไขข้อบกพร่องได้ใช้งานได้ในอุปกรณ์ระยะไกลหลายเครื่องโดยไม่ต้องเชื่อมต่ออุปกรณ์ผ่าน USB และไม่ต้องจัดการกับปัญหาการเชื่อมต่อ USB ที่พบได้ทั่วไป เช่น การติดตั้งไดรเวอร์

หากต้องการใช้การแก้ไขข้อบกพร่องแบบไร้สาย คุณต้องจับคู่อุปกรณ์กับเวิร์กสเตชันโดยใช้รหัสการจับคู่ ในการเริ่มต้น ให้ทำตามขั้นตอนต่อไปนี้

  1. ตรวจสอบว่าเวิร์กสเตชันและอุปกรณ์เชื่อมต่อเครือข่ายไร้สายเดียวกัน
  2. ตรวจสอบว่าอุปกรณ์ใช้ Android 11 ขึ้นไป ดูข้อมูลเพิ่มเติมได้ที่ตรวจสอบและอัปเดตเวอร์ชัน Android
  3. ตรวจสอบว่าคุณติดตั้ง Android Studio เวอร์ชันล่าสุดแล้ว ดาวน์โหลดได้ที่นี่
  4. อัปเดต SDK Platform Tools เป็นเวอร์ชันล่าสุดในเวิร์กสเตชัน

หากต้องการเชื่อมต่อกับอุปกรณ์ ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิด Android Studio แล้วเลือกจับคู่อุปกรณ์โดยใช้ Wi-Fi จากเมนูการเรียกใช้การกำหนดค่า
    เมนูแบบเลื่อนลงการเรียกใช้การกําหนดค่า
    รูปที่ 1 เรียกใช้การกําหนดค่า เมนู

    กล่องโต้ตอบจับคู่อุปกรณ์ผ่าน Wi-Fi จะปรากฏขึ้นดังที่แสดงในรูปที่ 2
    ภาพหน้าจอของหน้าต่างป๊อปอัปจับคู่อุปกรณ์ผ่าน Wi-Fi
    รูปที่ 2 กล่องโต้ตอบเพื่อจับคู่อุปกรณ์โดยใช้คิวอาร์โค้ดหรือรหัสการจับคู่
  2. เปิดใช้ตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ในอุปกรณ์
  3. เปิดใช้การแก้ไขข้อบกพร่องผ่าน Wi-Fi ในอุปกรณ์
    ภาพหน้าจอของโทรศัพท์ Pixel ที่แสดงการตั้งค่าระบบการแก้ไขข้อบกพร่องแบบไร้สาย
    รูปที่ 3 การตั้งค่าการแก้ไขข้อบกพร่องแบบไร้สายในโทรศัพท์ Google Pixel
  4. แตะการแก้ไขข้อบกพร่องแบบไร้สายและจับคู่อุปกรณ์ โดยทำดังนี้
    1. หากต้องการจับคู่อุปกรณ์ด้วยคิวอาร์โค้ด ให้เลือกจับคู่อุปกรณ์ด้วยคิวอาร์โค้ดแล้วสแกนคิวอาร์โค้ดดังที่แสดงในรูปที่ 2
    2. หากต้องการจับคู่อุปกรณ์ด้วยรหัสการจับคู่ ให้เลือกจับคู่อุปกรณ์ด้วยรหัสการจับคู่จากกล่องโต้ตอบจับคู่อุปกรณ์ใหม่ผ่าน Wi-Fi เลือกจับคู่โดยใช้รหัสการจับคู่ในอุปกรณ์ รหัส 6 หลักจะปรากฏขึ้น เมื่ออุปกรณ์ปรากฏในหน้าต่างจับคู่อุปกรณ์ผ่าน Wi-Fi ให้ป้อนรหัส 6 หลักที่แสดงในอุปกรณ์ แล้วเลือกจับคู่
      ภาพหน้าจอของตัวอย่างการป้อนรหัสการจับคู่
      รูปที่ 4 ตัวอย่างการป้อนรหัสการจับคู่ 6 หลัก
  5. หลังจากจับคู่แล้ว คุณจะพยายามติดตั้งใช้งานแอปในอุปกรณ์ได้

วิธีจับคู่อุปกรณ์อื่นหรือเลิกจำอุปกรณ์นี้ในเวิร์กสเตชัน

  1. ไปที่การแก้ไขข้อบกพร่องแบบไร้สายในอุปกรณ์
  2. แตะชื่อเวิร์กสเตชันในส่วนอุปกรณ์ที่จับคู่
  3. เลือกลืม

การมิเรอร์อุปกรณ์

คุณมิเรอร์อุปกรณ์จริงได้ในหน้าต่างอุปกรณ์ที่ทำงานอยู่ใน Android Studio เมื่อสตรีมการแสดงผลของอุปกรณ์ไปยัง Android Studio โดยตรง คุณจะใช้ IDE ของ Studio เองเพื่อดำเนินการทั่วไปต่างๆ ได้ เช่น การเริ่มแอปและการโต้ตอบกับแอป การบิดหน้าจอ การพับโทรศัพท์ออกและพับเข้า และการเปลี่ยนระดับเสียง

การมิเรอร์อุปกรณ์จะพร้อมใช้งานเสมอเมื่อมีอุปกรณ์ที่เชื่อมต่อกับคอมพิวเตอร์ซึ่งเปิดใช้การแก้ไขข้อบกพร่องผ่าน USB หรือไร้สาย คุณเริ่มและหยุดการมิเรอร์ได้โดยใช้หน้าต่างอุปกรณ์ที่ทำงานอยู่หรือเครื่องมือจัดการอุปกรณ์ (ดู > หน้าต่างเครื่องมือ > เครื่องมือจัดการอุปกรณ์) นอกจากนี้ คุณยังปรับแต่งได้เมื่อเปิดใช้งานการมิเรอร์อุปกรณ์ในการตั้งค่า (การตั้งค่า > เครื่องมือ > การมิเรอร์อุปกรณ์)

UI ของอุปกรณ์ที่ใช้งานอยู่

เปลี่ยนเส้นทางเสียง

เมื่อใช้การมิเรอร์อุปกรณ์ คุณสามารถเปลี่ยนเส้นทางเสียงจากอุปกรณ์ที่เชื่อมต่ออยู่ไปยังลำโพงหรือหูฟังของคอมพิวเตอร์ได้ เมื่อใช้การเปลี่ยนเส้นทางเสียง คุณจะเชื่อมต่อหูฟังกับคอมพิวเตอร์ไว้ได้และฟังเสียงจากทั้งคอมพิวเตอร์และโทรศัพท์ที่เชื่อมต่ออยู่ได้โดยไม่ต้องเชื่อมต่ออุปกรณ์ทีละเครื่องด้วยตนเอง หากต้องการเปิดใช้การเปลี่ยนเส้นทางเสียง ให้ไปที่ไฟล์ (Android Studio ใน macOS) > การตั้งค่า > เครื่องมือ > การมิเรอร์อุปกรณ์ แล้วเลือกเปลี่ยนเส้นทางเสียงจากอุปกรณ์ในเครื่อง โปรดทราบว่าระบบจะเปลี่ยนเส้นทางเสียงเสมอสำหรับอุปกรณ์ Firebase Test Lab ที่ใช้ Android 12 ขึ้นไป ไม่ว่าการตั้งค่าจะเป็นอย่างไร

ปัญหาที่ทราบ

อุปกรณ์บางรุ่นอาจไม่สามารถเข้ารหัสด้วยอัตราบิตที่เพียงพอที่จะรองรับการมิเรอร์อุปกรณ์ ในสถานการณ์เหล่านี้ คุณอาจเห็นข้อผิดพลาดในหน้าต่างอุปกรณ์ที่ทำงานอยู่ รวมถึงบันทึกที่คล้ายกับต่อไปนี้

2023-06-01 15:32:22,675 [  56094]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [  56289]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [  56290]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1

ประกาศเกี่ยวกับนโยบายความเป็นส่วนตัว

Android Studio สามารถเริ่มการมิเรอร์อุปกรณ์โดยอัตโนมัติสำหรับอุปกรณ์ที่เชื่อมต่อและจับคู่ไว้โดยอิงตามการตั้งค่าการมิเรอร์อุปกรณ์ ซึ่งอาจส่งผลให้มีการเปิดเผยข้อมูลสำหรับอุปกรณ์ที่เชื่อมต่อกับคำสั่ง adb tcpip เนื่องจากระบบจะส่งข้อมูลการมิเรอร์และคำสั่งผ่านช่องทางที่ไม่ได้เข้ารหัส นอกจากนี้ Android Studio ยังใช้ช่องทางที่ไม่ได้เข้ารหัสเพื่อสื่อสารกับเซิร์ฟเวอร์ adb ดังนั้นผู้ใช้รายอื่นในเครื่องโฮสต์จึงสามารถดักรับข้อมูลการมิเรอร์ได้

แก้ปัญหาการเชื่อมต่ออุปกรณ์

หากอุปกรณ์ไม่เชื่อมต่อกับ Android Studio ให้ลองทำตามขั้นตอนต่อไปนี้เพื่อแก้ปัญหา

แก้ปัญหาด้วยผู้ช่วยการเชื่อมต่อ

ผู้ช่วยการเชื่อมต่อจะแสดงวิธีการแบบทีละขั้นตอนเพื่อช่วยคุณตั้งค่าและใช้อุปกรณ์ผ่านการเชื่อมต่อ ADB

หากต้องการเริ่มผู้ช่วย ให้เลือกเครื่องมือ > แก้ปัญหาการเชื่อมต่ออุปกรณ์

ผู้ช่วยการเชื่อมต่อจะให้วิธีการ การควบคุมตามบริบท และรายการอุปกรณ์ที่เชื่อมต่อในชุดหน้าเว็บในแผง Assistant ใช้ปุ่มถัดไปและก่อนหน้าที่ด้านล่างของแผง Assistant เพื่อไปยังหน้าต่างๆ ตามต้องการ

  • เชื่อมต่ออุปกรณ์ผ่าน USB: ก่อนอื่นผู้ช่วยการเชื่อมต่อจะแจ้งให้คุณเชื่อมต่ออุปกรณ์ผ่าน USB และมีปุ่มสแกนอุปกรณ์ USB อีกครั้งเพื่อให้คุณเริ่มการสแกนใหม่สำหรับอุปกรณ์ที่เชื่อมต่อ
  • เปิดใช้การแก้ไขข้อบกพร่อง USB: จากนั้นผู้ช่วยการเชื่อมต่อจะบอกวิธีเปิดใช้การแก้ไขข้อบกพร่อง USB ในตัวเลือกสำหรับนักพัฒนาแอปในอุปกรณ์
  • รีสตาร์ทเซิร์ฟเวอร์ ADB: หากยังไม่เห็นอุปกรณ์ในรายการอุปกรณ์ที่พร้อมใช้งาน ให้ใช้ปุ่มรีสตาร์ทเซิร์ฟเวอร์ ADB ในหน้าสุดท้ายของเครื่องมือช่วยเชื่อมต่อ การรีสตาร์ทเซิร์ฟเวอร์ ADB ยังทําให้ ADB สแกนหาอุปกรณ์อีกครั้งด้วย หากยังคงไม่เห็นอุปกรณ์ในรายการอุปกรณ์ที่พร้อมใช้งาน ให้ลองทำตามขั้นตอนการแก้ปัญหาในส่วนต่อไปนี้

แก้ปัญหาการเชื่อมต่อ USB

หากผู้ช่วยการเชื่อมต่อไม่ตรวจพบอุปกรณ์ผ่าน USB ให้ลองทำตามขั้นตอนการแก้ปัญหาต่อไปนี้เพื่อแก้ไขปัญหา

ตรวจสอบว่า Android Studio เชื่อมต่อกับโปรแกรมจำลอง Android

หากต้องการตรวจสอบว่าปัญหาเกิดจากปัญหาการเชื่อมต่อระหว่าง Android Studio กับโปรแกรมจำลอง Android หรือไม่ ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดเครื่องมือจัดการอุปกรณ์
  2. สร้าง AVD ใหม่หากยังไม่มี
  3. เรียกใช้โปรแกรมจำลองโดยใช้ AVD
  4. ทำตามข้อใดข้อหนึ่งต่อไปนี้
    • หาก Android Studio เชื่อมต่อกับโปรแกรมจำลองไม่ได้ ให้ดาวน์โหลดเครื่องมือแพลตฟอร์ม SDK เวอร์ชันล่าสุดแล้วลองอีกครั้ง
    • หากโปรแกรมจำลองเริ่มต้นขึ้นสําเร็จ ให้ตรวจสอบสาย USB ตามที่อธิบายไว้ในส่วนถัดไป

ตรวจสอบสาย USB

หากต้องการตรวจสอบว่าปัญหาเกิดจากสาย USB เสียหรือไม่ ให้ทำตามขั้นตอนในส่วนนี้

หากมีสาย USB อื่น ให้ทำดังนี้

  1. เชื่อมต่ออุปกรณ์โดยใช้สายสำรอง
  2. ตรวจสอบว่าตอนนี้ผู้ช่วยการเชื่อมต่อตรวจพบอุปกรณ์ได้หรือไม่
  3. หากไม่พบอุปกรณ์ ให้ลองใช้สายหลักอีกครั้ง
  4. หากระบบยังคงไม่ตรวจพบอุปกรณ์ ให้ถือว่าปัญหาเกิดจากอุปกรณ์ และตรวจสอบว่าอุปกรณ์ได้รับการตั้งค่าสําหรับการพัฒนาหรือไม่ตามที่อธิบายไว้ในส่วนต่อไปนี้

หากไม่มีสาย USB เส้นอื่นแต่มีอุปกรณ์ Android เครื่องอื่น ให้ทำดังนี้

  1. เชื่อมต่ออุปกรณ์เครื่องที่ 2 กับคอมพิวเตอร์
  2. หากผู้ช่วยการเชื่อมต่อตรวจพบอุปกรณ์รอง ให้ถือว่าปัญหาเกิดจากอุปกรณ์หลัก และตรวจสอบว่าอุปกรณ์ได้รับการตั้งค่าสำหรับการพัฒนาหรือไม่

    หากไม่พบอุปกรณ์รอง แสดงว่าปัญหาอาจเกิดจากสาย USB

ตรวจสอบว่าอุปกรณ์ได้รับการตั้งค่าสำหรับการสํารวจหรือไม่

หากต้องการตรวจสอบว่าปัญหาเกิดจากการตั้งค่าในอุปกรณ์หรือไม่ ให้ทำตามขั้นตอนต่อไปนี้

  1. ทำตามขั้นตอนในส่วนตั้งค่าอุปกรณ์สําหรับการพัฒนา
  2. หากวิธีนี้ยังแก้ปัญหาไม่ได้ โปรดติดต่อขอความช่วยเหลือจากทีมสนับสนุนลูกค้าของ OEM อุปกรณ์ แจ้งตัวแทนฝ่ายสนับสนุนลูกค้าว่าอุปกรณ์ไม่เชื่อมต่อกับ Android Studio โดยใช้ ADB

แก้ปัญหาการเชื่อมต่อแบบไร้สาย

หากพบปัญหาในการเชื่อมต่ออุปกรณ์แบบไร้สาย ให้ลองทำตามขั้นตอนการแก้ปัญหาต่อไปนี้เพื่อแก้ไขปัญหา

ตรวจสอบว่าเวิร์กสเตชันและอุปกรณ์ของคุณมีคุณสมบัติตรงตามข้อกําหนดเบื้องต้นหรือไม่

โปรดตรวจสอบสิ่งต่อไปนี้เพื่อให้เป็นไปตามข้อกําหนดเบื้องต้นสำหรับการแก้ไขข้อบกพร่องแบบไร้สาย

ตรวจสอบปัญหาอื่นๆ ที่ทราบ

ต่อไปนี้เป็นรายการปัญหาที่ทราบในปัจจุบันเกี่ยวกับการแก้ไขข้อบกพร่องแบบไร้สายใน Android Studio และวิธีแก้ปัญหา

  • Wi-Fi ไม่เชื่อมต่อ: เครือข่าย Wi-Fi บางเครือข่าย เช่น เครือข่าย Wi-Fi ขององค์กร อาจบล็อกการเชื่อมต่อ P2P และไม่อนุญาตให้คุณเชื่อมต่อผ่าน Wi-Fi ลองเชื่อมต่อด้วยสายหรือเครือข่าย Wi-Fi อื่น
  • บางครั้ง ADB ผ่าน Wi-Fi จะปิดโดยอัตโนมัติ: กรณีนี้อาจเกิดขึ้นหากอุปกรณ์เปลี่ยนเครือข่าย Wi-Fi หรือยกเลิกการเชื่อมต่อจากเครือข่าย

คีย์ความปลอดภัย RSA

เมื่อคุณเชื่อมต่ออุปกรณ์ที่ใช้ Android 4.2.2 (API ระดับ 17) ขึ้นไปกับคอมพิวเตอร์ ระบบจะแสดงกล่องโต้ตอบเพื่อถามว่าต้องการยอมรับคีย์ RSA ที่อนุญาตให้แก้ไขข้อบกพร่องผ่านคอมพิวเตอร์นี้หรือไม่ กลไกความปลอดภัยนี้จะปกป้องอุปกรณ์ของผู้ใช้เนื่องจากจะไม่สามารถดำเนินการแก้ไขข้อบกพร่องผ่าน USB และคำสั่ง adb อื่นๆ ได้ เว้นแต่คุณจะปลดล็อกอุปกรณ์และยอมรับกล่องโต้ตอบ