ADB และการทดสอบแอป Android

การเรียกใช้แอป Android ใน Chromebook เป็นเรื่องดี เพราะช่วยให้ผู้ใช้เข้าถึงข้อเสนอมากมายในระบบนิเวศ Android และช่วยให้นักพัฒนาแอป Android มีโอกาสเข้าถึงผู้ใช้ ChromeOS

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

ไม่ว่านักพัฒนาแอปจะติดตั้งใช้งานแอป Android โดยตรงจาก ChromeOS (ใช้ Android Studio ใน Chromebook) หรือจากอุปกรณ์อื่น นักพัฒนาแอปก็ใช้ ADB เพื่อติดตั้งใช้งานแอปและแก้ไขข้อบกพร่องของการโต้ตอบต่างๆ กับ Chromebook ได้ ดูรายละเอียดเพิ่มเติมได้ที่ขั้นตอนด้านล่าง

เปิดใช้การแก้ไขข้อบกพร่อง ADB

ก่อนหน้านี้ การใช้ ADB ใน Chromebook จะทำได้เฉพาะในโหมดนักพัฒนาซอฟต์แวร์ ซึ่งต้องทำ Powerwash (รีเซ็ต) อุปกรณ์และอาจลดความปลอดภัย โชคดีที่ตั้งแต่ Chrome 81 เป็นต้นมา นักพัฒนาแอปสามารถเก็บอุปกรณ์ไว้ในโหมดปกติและยังคงนำแอปที่พัฒนาไปใช้ใน ChromeOS ได้โดยตรง เพียงแค่สลับสวิตช์ โดยทำตามขั้นตอนดังนี้:

ก่อนอื่น ให้ตรวจสอบว่า Chromebook ไม่ได้อยู่ในโหมดนักพัฒนาซอฟต์แวร์ จากนั้นไปที่การตั้งค่าและเปิด Linux (หากยังไม่ได้ทำ)

เปิด Linux

เมื่อ Linux พร้อมใช้งาน ให้เปิดการตั้งค่า Linux แล้วคุณจะเห็นตัวเลือกใหม่ "พัฒนาแอป Android" ให้เปิดตัวเลือกนั้น

สลับเปิดใช้การแก้ไขข้อบกพร่อง ADB แล้วคอมพิวเตอร์จะรีสตาร์ท

เปิดใช้การแก้ไขข้อบกพร่อง ADB

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

อุปกรณ์นี้อาจมีแอปที่ยังไม่ได้รับการยืนยันจาก Google

ตอนนี้ ADB พร้อมให้ใช้งานแล้วเพื่อนำแอปไปใช้งานใน Chromebook, เรียกใช้คำสั่งการแก้ไขข้อบกพร่อง และโต้ตอบกับอุปกรณ์โดยตรง

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

  • Chromebook ที่ใช้ ARM
  • Chromebook ที่ใช้ x86
  • อุปกรณ์ที่มีหน้าจอสัมผัสและอุปกรณ์ที่ไม่มีหน้าจอสัมผัส
  • อุปกรณ์แบบแปลงสภาพได้ ซึ่งก็คืออุปกรณ์ที่เปลี่ยนจากแล็ปท็อปเป็นแท็บเล็ตได้
  • อุปกรณ์ที่มีสไตลัส

ติดตั้งใช้งานจาก ChromeOS

หลังจากเปิดใช้การแก้ไขข้อบกพร่อง ADB แล้ว คุณจะโหลดแอป Android ลงในอุปกรณ์ ChromeOS ได้โดยตรงโดยใช้ Android Studio หรือหากมี APK คุณจะโหลดโดยใช้เทอร์มินัลได้

ติดตั้งใช้งานด้วย Android Studio

หลังจากตั้งค่า Android Studio และ ADB ตามที่อธิบายไว้ข้างต้นแล้ว คุณจะพุชแอปไปยังคอนเทนเนอร์ Android ของ Chromebook ได้โดยตรงจาก Android Studio

Chromebook จะปรากฏเป็นตัวเลือกในเมนูแบบเลื่อนลงของอุปกรณ์

เมนูแบบเลื่อนลงของอุปกรณ์ Android Studio

ตอนนี้คุณสามารถพุชแอปได้เหมือนกับอุปกรณ์ Android อื่นๆ กล่องโต้ตอบการให้สิทธิ์ ADB จะปรากฏขึ้นในครั้งแรกที่คุณพยายามพุชไปยังอุปกรณ์ใหม่ หลังจากให้สิทธิ์แล้ว แอปพลิเคชันจะเปิดขึ้นในหน้าต่างใหม่

เชื่อมต่อกับอุปกรณ์ผ่าน ADB ใน Android Studio

เพียงเท่านี้ คุณก็ติดตั้งใช้งานแอปใน Chromebook ทดสอบ และแก้ไขข้อบกพร่องได้โดยไม่ต้องยุ่งยากกับการอยู่ในโหมดนักพัฒนาแอป

ติดตั้งใช้งานด้วยเทอร์มินัล

ติดตั้ง ADB หากจำเป็น

sudo apt install adb

เชื่อมต่อกับอุปกรณ์

adb connect arc

ป๊อปอัปการให้สิทธิ์สำหรับการแก้ไขข้อบกพร่อง USB จะปรากฏขึ้นในครั้งแรกที่คุณพยายามติดตั้งใช้งานในอุปกรณ์ และคุณจะต้องอนุญาต

การให้สิทธิ์ในการเชื่อมต่อกับอุปกรณ์

ติดตั้งแอปจากเทอร์มินัลโดยใช้คำสั่งต่อไปนี้

adb install [path to your APK]

ติดตั้งแอปจากเทอร์มินัล

ติดตั้งใช้งานจากอุปกรณ์อื่น

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

เชื่อมต่อกับ ADB ผ่านเครือข่าย

  1. ตรวจสอบว่าคุณได้เปิดใช้การแก้ไขข้อบกพร่อง ADB แล้ว

ดูที่อยู่ IP ของ Chromebook โดยทำดังนี้

  1. คลิกนาฬิกาที่ด้านขวาล่างของหน้าจอ

  2. คลิกไอคอนรูปเฟือง

  3. คลิกประเภทเครือข่ายที่คุณเชื่อมต่อ (Wi-Fi หรืออินเทอร์เน็ตมือถือ) แล้วคลิกชื่อเครือข่าย

  4. จดที่อยู่ IP

เชื่อมต่อกับ Chromebook โดยทำดังนี้

  1. กลับไปที่คอมพิวเตอร์สำหรับการพัฒนาซอฟต์แวร์ แล้วใช้ ADB เพื่อเชื่อมต่อกับ Chromebook โดยใช้ที่อยู่ IP ของ Chromebook

    adb connect 
  2. ใน Chromebook ให้คลิกอนุญาตเมื่อได้รับข้อความแจ้งว่าต้องการอนุญาตดีบักเกอร์หรือไม่ สร้างเซสชัน ADB แล้ว

การแก้ปัญหาการแก้ไขข้อบกพร่อง ADB ผ่านเครือข่าย

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

  1. ปิดใช้งานการแก้ไขข้อบกพร่อง ADB ในตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์
  2. ในหน้าต่างเทอร์มินัล ให้เรียกใช้ adb kill-server
  3. เปิดใช้งานตัวเลือกการแก้ไขข้อบกพร่อง ADB อีกครั้ง
  4. ในหน้าต่างเทอร์มินัล ให้ลองเรียกใช้ adb connect
  5. คลิกอนุญาตเมื่อได้รับข้อความแจ้งว่าต้องการอนุญาตการแก้ไขข้อบกพร่องหรือไม่ สร้างเซสชัน ADB แล้ว

เชื่อมต่อกับ ADB ผ่าน USB

หากต้องการพุช APK จากอุปกรณ์อื่นไปยัง Chromebook ผ่าน USB คุณต้องเริ่ม ChromeOS ในโหมดนักพัฒนาแอปเพื่อให้กำหนดค่า Chromebook และพุชแอปจากเครื่องโฮสต์ได้ ปัจจุบันวิธีนี้เป็นวิธีเดียวที่ต้องใช้โหมดนักพัฒนาแอป และใช้ได้กับอุปกรณ์เพียงไม่กี่รุ่นเท่านั้น ด้วยเหตุนี้ เราจึงแนะนำให้ใช้ ADB ผ่านเครือข่ายแทน หากยังต้องการดำเนินการต่อ โปรดทำตามขั้นตอนต่อไปนี้เพื่อเข้าสู่โหมดนักพัฒนาแอป

  1. ตรวจสอบว่าคุณได้เปิดใช้การแก้ไขข้อบกพร่อง ADB แล้ว
  2. ตรวจสอบว่าอุปกรณ์รองรับการแก้ไขข้อบกพร่องผ่าน USB หรือไม่
  3. กด control+alt+t เพื่อเริ่มเทอร์มินัล ChromeOS
  4. พิมพ์ shell เพื่อไปยังเชลล์คำสั่ง Bash
    crosh> shell
    chronos@localhost / $
  5. พิมพ์คำสั่งต่อไปนี้เพื่อตั้งค่าอุปกรณ์
    $ sudo crossystem dev_enable_udc=1
    $ sudo reboot
  6. หลังจากรีบูตแล้ว ให้เปิดเทอร์มินัลอีกครั้งและเรียกใช้คำสั่งต่อไปนี้เพื่อเปิดใช้ ADB ในพอร์ต USB ของ Chromebook
    $ sudo ectool usbpd  dr_swap

ใช้คำสั่งนี้ทุกครั้งที่คุณถอดและเสียบสาย USB อีกครั้ง หากต้องการตรวจสอบว่า Chromebook อยู่ในโหมด UFP หรือไม่ ให้เรียกใช้ ectool usbpd

  1. เสียบสาย USB เข้ากับพอร์ตที่รองรับในอุปกรณ์
  2. เรียกใช้ adb devices จากเครื่องมือแพลตฟอร์ม Android SDK ในเครื่องโฮสต์เพื่อดู Chromebook ที่แสดงเป็นอุปกรณ์ที่รองรับ ADB
  3. ใน Chromebook ให้คลิกอนุญาตเมื่อได้รับข้อความแจ้งว่าต้องการอนุญาตดีบักเกอร์หรือไม่ สร้างเซสชัน ADB แล้ว