แอปตัวอย่าง Android สำหรับ Home APIs

แอปตัวอย่างจะแสดงความสามารถพื้นฐานของ Google Home API สำหรับ Android

ข้อกำหนดเบื้องต้น

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

  • Android Studio เวอร์ชัน 2024.2.1 ("Ladybug") ขึ้นไป โปรดทราบว่าเวอร์ชันที่เก่ากว่านี้อาจทำงานร่วมกับ Home APIs SDK ได้ไม่ถูกต้อง

    ดาวน์โหลด Android Studio

  • โปรแกรมแก้ไขข้อบกพร่องของ Android (adb)

    ติดตั้ง adb

    ซึ่งทำได้ด้วยเครื่องมือจัดการ SDK

และหากต้องการทดสอบ Home API คุณจะต้องมีสิ่งต่อไปนี้

  • อุปกรณ์ Android ที่ใช้ Android 10 ขึ้นไปซึ่งตั้งค่าด้วยบัญชี Google ที่คุณต้องการใช้สำหรับการพัฒนา ตรวจสอบว่าได้ติดตั้ง Android Studio เวอร์ชันล่าสุดและลงชื่อเข้าใช้ด้วยบัญชีนักพัฒนาแอปนี้แล้ว
  • เครือข่าย Wi-Fi
  • หากต้องการเข้าถึงและควบคุมอุปกรณ์ Matter คุณต้องมีฮับ Google ที่รองรับ Home API ด้วย ดูรายละเอียดได้ที่การเชื่อมต่อใน Android
  • อุปกรณ์ที่รองรับอย่างน้อย 1 เครื่องในบ้าน หากอุปกรณ์นี้ (หรืออุปกรณ์อื่นๆ ที่คุณต้องการทดสอบ) ใช้ Thread ฮับก็ต้องเป็น Thread Border Router (TBR) ด้วย แอปตัวอย่าง Android รองรับประเภทอุปกรณ์และลักษณะต่อไปนี้

    • ไฟอุณหภูมิสี (เปิดและปิด, ความสว่าง)
    • เซ็นเซอร์ตรวจจับการเปิด/ปิด (สถานะบูลีน)
    • หลอดไฟแบบหรี่แสงได้ (เปิดและปิด, ความสว่าง)
    • ล็อกประตู
    • ไฟสีแบบขยาย (เปิดและปิด, ความสว่าง)
    • สวิตช์ทั่วไป
    • Google Border Router
    • Google กล้องถ่ายรูป
    • Google Doorbell
    • เซ็นเซอร์ตรวจจับการมีคนอยู่ (การตรวจจับการมีคนอยู่)
    • ไฟเปิด/ปิด (เปิดและปิด, ความสว่าง)
    • สวิตช์เปิด/ปิดไฟ
    • หน่วยปลั๊กอินเปิด/ปิด (เปิดและปิด)
    • เซ็นเซอร์เปิด/ปิด

ดาวน์โหลดซอร์สโค้ด

ซอร์สโค้ดสำหรับแอปตัวอย่างมีให้ใช้งานใน GitHub

ไปยังตำแหน่งที่ต้องการบันทึกโปรเจ็กต์ แล้วโคลนโปรเจ็กต์โดยทำดังนี้

git clone https://github.com/google-home/google-home-api-sample-app-android.git

ตั้งค่า SDK

Home API สำหรับ Android ในเวอร์ชันเบต้าแบบเปิดนี้ยังไม่ได้เป็นส่วนหนึ่งของไลบรารีมาตรฐานที่ Google มีให้สำหรับการพัฒนา หากต้องการพัฒนาแอปพลิเคชัน Android ด้วย Home API คุณต้องดาวน์โหลดและโฮสต์ไลบรารีในเครื่อง

หากต้องการดาวน์โหลด Home APIs Android SDK คุณต้องลงชื่อเข้าใช้ Google Home Developers ก่อน

ลงชื่อเข้าใช้เลย

สร้างแอป

  1. เปิด Android Studio แล้วเปิดโฟลเดอร์โปรเจ็กต์ google-home-api-sample-app-android ที่โคลนไปยังเครื่องของคุณ
  2. ในระหว่างการตั้งค่าครั้งแรก Android Studio อาจใช้เวลาถึง 10 นาทีในการดาวน์โหลดทรัพยากร Dependency ทั้งหมดของโปรเจ็กต์และสร้าง Gradle ให้เสร็จสมบูรณ์

  3. เชื่อมต่อคอมพิวเตอร์กับโทรศัพท์ Android จริงผ่านสาย USB และเปิดใช้ ADB ในตัวเลือกสำหรับนักพัฒนาแอป ตรวจสอบว่า Android Studio เชื่อมต่อกับโทรศัพท์ Android ผ่าน ADB ได้

  4. เปลี่ยนชื่อแพ็กเกจของแอปตัวอย่างเป็นชื่อใหม่ที่ยังไม่เคยลงทะเบียนมาก่อน เช่น ชื่อที่อิงตามชื่อองค์กรของคุณ

    1. เปิดโปรเจ็กต์
    2. ขยายลำดับชั้นของแหล่งที่มา
    3. เลือกส่วนของแพ็กเกจที่ต้องการเปลี่ยนแปลง หรือก็คือ com.example
    4. คลิกขวาที่แพ็กเกจ แล้วเลือกเปลี่ยนโครงสร้าง > เปลี่ยนชื่อ... เมนูเปลี่ยนโครงสร้าง > เปลี่ยนชื่อ
    5. ป้อนชื่อใหม่แล้วคลิก Refactor
    6. แก้ไขไฟล์ build.gradle.kts โดยเปลี่ยน android namespace และ applicationId เป็นชื่อแพ็กเกจใหม่
  5. กำหนดค่าขอบเขต OAuth ใน HomeModule.kt โดยค่าเริ่มต้น ซอร์สโค้ดของแอปตัวอย่างจะใช้ขอบเขต https://www.googleapis.com/auth/home.platform.v2 ฟีเจอร์หลายอย่างในแอปตัวอย่างจะถูกจำกัดโดยขอบเขต home.platform.v2 และต้องได้รับอนุมัติจากพาร์ทเนอร์จึงจะเข้าถึงได้ หากต้องการเรียกใช้แอปตัวอย่างด้วยขอบเขต https://www.googleapis.com/auth/home.platform.selected.devices มาตรฐาน ให้เปิด HomeModule.kt และเปลี่ยน homePlatformScope ใน HomeConfig เป็น HOME_PLATFORM_SCOPE_VERSION_1 ดังนี้

    val homeConfig = HomeConfig(
      coroutineContext = Dispatchers.IO,
      factoryRegistryProvider = {
        FactoryConstants.factoryRegistryAllTraitsAllTypes
      },
      homePlatformScope =
        HomeConfig.HomePlatformScope.HOME_PLATFORM_SCOPE_VERSION_1
    )
    

อัปเดต homePlatformScope เป็น HOME_PLATFORM_SCOPE_VERSION_1 ใน switchAccount() ของ HomeClientProvider.kt ด้วย มิเช่นนั้น การเลือกไอคอนโปรไฟล์เพื่อเปลี่ยนบัญชีจะเปลี่ยนแอปกลับไปเป็น HOME_PLATFORM_SCOPE_VERSION_2

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

สร้างใบรับรองการรับรอง

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

  1. สร้างใบรับรอง App Signing สำหรับการแก้ไขข้อบกพร่องโดยเรียกใช้แอปใน Android Studio เมื่อคุณเรียกใช้หรือแก้ไขข้อบกพร่องของแอปใน Android Studio ระบบจะสร้างใบรับรอง App Signing โดยอัตโนมัติเพื่อใช้ในการพัฒนาและแก้ไขข้อบกพร่องAndroid Studio ดูคำอธิบายทั้งหมดได้ที่Android Studio: ลงชื่อในบิลด์การแก้ไขข้อบกพร่อง

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

    ดูวิธีการที่ละเอียดยิ่งขึ้นได้ที่เรียกใช้แอปในอุปกรณ์ฮาร์ดแวร์ในเว็บไซต์ของนักพัฒนาแอป Android

    จากนั้นหยุดแอปที่ทำงานอยู่

  2. รับลายนิ้วมือ SHA-1 ของใบรับรองสำหรับการแก้ไขข้อบกพร่องโดยทำตามวิธีการที่ระบุไว้ในจัดการไคลเอ็นต์ OAuth / ประเภทแอปพลิเคชัน / แอปพลิเคชันแบบเนทีฟ / Android ในเว็บไซต์ความช่วยเหลือของคอนโซล Google Cloud

  1. ในคอนโซล Google Cloud ให้ไปที่แดชบอร์ดตัวเลือกโปรเจ็กต์ แล้วเลือกโปรเจ็กต์ที่ต้องการใช้สร้างข้อมูลเข้าสู่ระบบ OAuth
  2. ไปที่หน้า API และบริการ แล้วคลิกข้อมูลเข้าสู่ระบบในเมนูการนำทาง
  3. หากคุณยังไม่ได้กำหนดค่าหน้าจอขอความยินยอมสำหรับโปรเจ็กต์ Google Cloud นี้ ปุ่มกำหนดค่าหน้าจอขอความยินยอมจะปรากฏขึ้น ในกรณีนี้ ให้กำหนดค่าหน้าจอขอความยินยอมโดยใช้ขั้นตอนต่อไปนี้ ไม่เช่นนั้น ให้ไปยังส่วนถัดไป

    1. คลิกกำหนดค่าหน้าจอขอความยินยอม หน้าหน้าจอขอความยินยอม OAuth จะปรากฏขึ้น
    2. เลือกภายในหรือภายนอกตามกรณีการใช้งาน แล้วคลิกสร้าง แผงหน้าจอขอความยินยอม OAuth จะปรากฏขึ้น
    3. ป้อนข้อมูลในหน้าข้อมูลแอปตามวิธีการบนหน้าจอ แล้วคลิกบันทึกและดำเนินการต่อ แผงขอบเขตจะปรากฏขึ้น
    4. คุณไม่จำเป็นต้องเพิ่มขอบเขตใดๆ ดังนั้นให้คลิกบันทึกและดำเนินการต่อ แผงผู้ใช้ทดสอบจะปรากฏขึ้น
    5. คลิกกลุ่มเป้าหมาย แล้วคลิกปุ่ม + เพิ่มผู้ใช้
    6. ป้อนอีเมลของผู้ใช้ทดสอบ แล้วคลิกปุ่มบันทึก
    7. คลิกบันทึกและต่อไป แผงสรุปจะปรากฏขึ้น
    8. ตรวจสอบข้อมูลหน้าจอขอความยินยอม OAuth แล้วคลิกกลับไปที่แดชบอร์ด

ดูรายละเอียดทั้งหมดได้ที่หัวข้อการตั้งค่าหน้าจอขอความยินยอม OAuth ในเว็บไซต์ความช่วยเหลือของคอนโซล Google Cloud โปรดเพิ่มผู้ใช้ทดสอบอย่างน้อย 1 รายก่อนดำเนินการต่อ

ตั้งค่าข้อมูลเข้าสู่ระบบ OAuth

  1. ลงทะเบียนแอปตัวอย่างสำหรับ OAuth 2.0 และสร้างข้อมูลเข้าสู่ระบบ OAuth โดยทำตามวิธีการที่ระบุไว้ในการตั้งค่า OAuth 2.0
    1. ระบุประเภทแอปพลิเคชัน ซึ่งก็คือแอปเนทีฟ/แอป Android
    2. เพิ่มลายนิ้วมือ SHA-1 ลงในไคลเอ็นต์ OAuth โดยทำตามวิธีการในหัวข้อการตั้งค่า OAuth 2.0 / แอปพลิเคชันแบบเนทีฟ / Android ในเว็บไซต์ความช่วยเหลือของคอนโซล Google Cloud คุณควรสร้างคีย์ SHA-1 จากคีย์ Android Studio เริ่มต้นตลอดกระบวนการพัฒนา

เรียกใช้แอป

  1. เมื่ออุปกรณ์เคลื่อนที่เชื่อมต่อกับเครื่องของคุณแล้ว ให้คลิกเรียกใช้โปรเจ็กต์อีกครั้งเพื่อเรียกใช้แอปตัวอย่างบนอุปกรณ์เคลื่อนที่

เมื่อติดตั้งแล้ว แอปจะพร้อมใช้งานในอุปกรณ์เคลื่อนที่ในชื่อแอปตัวอย่าง Home API