Ambient API ช่วยให้แอปพลิเคชันของคุณเชื่อมต่ออุปกรณ์แอมเบียนท์กับบัญชี Google Photos ของผู้ใช้ และแสดงรูปภาพที่เลือก
ขั้นตอนการเรียกใช้ Ambient API
รายละเอียดการทำงานของ Ambient API ในการเชื่อมต่ออุปกรณ์ จากนั้นดึงข้อมูลและแสดงรายการสื่อมีดังนี้
ตรวจสอบอุปกรณ์ที่มีอยู่ (แนะนำ): ก่อนสร้างอุปกรณ์ใหม่ เราขอแนะนำให้ตรวจสอบว่ามีอุปกรณ์สำหรับผู้ใช้ปัจจุบันอยู่แล้วหรือไม่ แอปพลิเคชันของคุณควรมีการแมประหว่างผู้ใช้ภายในกับ
deviceIdที่ Google ให้มาสำหรับอุปกรณ์ที่ผู้ใช้สร้างขึ้นผ่านแอปของคุณ หากพบdeviceIdของผู้ใช้ คุณสามารถรีเฟรชโทเค็นการให้สิทธิ์ของผู้ใช้ได้ (หากจำเป็น)เริ่มการให้สิทธิ์ OAuth 2.0 (และสร้างอุปกรณ์ได้หากต้องการ): เริ่มขั้นตอนการOAuth 2.0 สำหรับทีวีและอุปกรณ์อินพุตแบบจำกัดด้วยการขอรหัสการให้สิทธิ์
สร้างอุปกรณ์ใหม่: แอปของคุณสร้างอุปกรณ์ในบัญชี Google Photos ของผู้ใช้โดยการเรียกใช้
CreateDeviceและระบุ UUID เวอร์ชัน 4 ที่ถูกต้องเมื่อสร้างอุปกรณ์สำเร็จ API จะแสดงผล
AmbientDeviceออบเจ็กต์ที่มีdeviceIdที่ Google กำหนด แอปพลิเคชันของคุณต้องจัดเก็บdeviceIdนี้และเชื่อมโยงกับผู้ใช้แสดง
settingsUri: ออบเจ็กต์AmbientDeviceมีsettingsUriแสดง URI นี้ต่อผู้ใช้ โดยปกติจะเป็นคิวอาร์โค้ดที่ผู้ใช้สแกนโดยใช้อุปกรณ์เคลื่อนที่ได้ URI นี้จะนําผู้ใช้ไปยังแอป Google Photos ซึ่งผู้ใช้สามารถกําหนดค่าแหล่งที่มาของสื่อ (เช่น อัลบั้ม) ที่ต้องการแสดงบนอุปกรณ์แอมเบียนท์ตรวจสอบ
mediaSourcesSet: แอปพลิเคชันควรเรียกใช้เมธอดGetDeviceเป็นระยะๆ โดยระบุdeviceIdเพื่อตรวจสอบสถานะของอุปกรณ์ที่ทำงานอยู่รอบๆ ตรวจสอบช่องmediaSourcesSetในAmbientDeviceตอบ โดยค่าเริ่มต้นจะเป็นเท็จเมื่อผู้ใช้เลือกแหล่งที่มาของสื่อในแอป Google Photos เรียบร้อยแล้ว ช่องนี้จะเปลี่ยนเป็น "จริง"
การตอบกลับ
AmbientDeviceจะมีpollingConfigที่มีpollIntervalที่คุณควรใช้เป็นแนวทางสำหรับความถี่ในการสำรวจดึงข้อมูลรายการสื่อ: เมื่อ
mediaSourcesSetแสดงผลเป็น true แอปพลิเคชันของคุณจะเริ่มดึงข้อมูลรายการสื่อที่ผู้ใช้เลือกเรียกใช้เมธอด
ListMediaItemsโดยระบุdeviceIdAPI จะแสดงListMediaItemsResponseที่มีรายการAmbientMediaItemออบเจ็กต์AmbientMediaItemแต่ละรายการจะมีรายละเอียด เช่น ออบเจ็กต์id,createTimeและออบเจ็กต์MediaFileที่มีข้อมูลเมตาเพิ่มเติมMediaFileมีbaseUrlที่คุณสามารถใช้เพื่อดึงข้อมูลไบต์จริงของรายการสื่อ อ่านคู่มือแสดงรายการและดึงข้อมูลรายการสื่อเพื่อดูรายละเอียดเกี่ยวกับพารามิเตอร์baseUrlเพิ่มเติมแสดงรายการสื่อ: ใช้
baseUrlจากMediaFileเพื่อดาวน์โหลดและแสดงเนื้อหาสื่อบนอุปกรณ์แอมเบียนท์
สิ่งสำคัญที่ต้องคำนึงถึง
ขีดจำกัดและการจัดการอุปกรณ์
- ขีดจํากัดของอุปกรณ์: โปรดทราบว่าแอปพลิเคชันของคุณมีขีดจํากัดอุปกรณ์ 100 เครื่องต่อผู้ใช้
- กิจกรรมและโทเค็นของอุปกรณ์: คุณจะต้องจัดการวงจรชีวิตของอุปกรณ์และโทเค็นการให้สิทธิ์ของผู้ใช้ พิจารณาระยะเวลาที่อุปกรณ์จะยังคงใช้งานอยู่และวิธีจัดการการรีเฟรชโทเค็นหรือการให้สิทธิ์อีกครั้งหากอุปกรณ์ไม่ได้ใช้งานหรือโทเค็นหมดอายุ
โปรดดูรายละเอียดเพิ่มเติมในคำแนะนำเกี่ยวกับสร้างและจัดการอุปกรณ์
วิธีทำงานกับรายการสื่อ
- การใช้รายการสื่อ: ทำความเข้าใจวิธีดึงข้อมูลและจัดการเนื้อหารายการสื่ออย่างถูกต้องโดยใช้
baseUrlรวมถึงการตรวจสอบสิทธิ์หรือพารามิเตอร์ที่จำเป็น - การจัดการข้อผิดพลาด: ใช้การจัดการข้อผิดพลาดที่มีประสิทธิภาพสำหรับการเรียก API ซึ่งรวมถึงสถานการณ์ต่างๆ เช่น
NOT_FOUNDสำหรับอุปกรณ์,FAILED_PRECONDITIONหากไม่ได้ตั้งค่าแหล่งที่มาของสื่อ และRESOURCE_EXHAUSTEDหากถึงขีดจำกัดของอุปกรณ์
คู่มือแสดงรายการและเรียกข้อมูลรายการสื่อมีรายละเอียดเพิ่มเติม
ขั้นตอนถัดไป
- กำหนดค่าแอปพลิเคชัน: ยืนยันว่าคุณมีข้อมูลเข้าสู่ระบบที่จำเป็น และได้กำหนดค่าแอปพลิเคชันสำหรับ OAuth 2.0 สำหรับทีวีและอุปกรณ์ที่มีอินพุตแบบจำกัดแล้ว
- อ่านเอกสารอ้างอิง Ambient API: สำรวจเอกสารอ้างอิงแบบละเอียดสำหรับวิธีการ พารามิเตอร์คำขอและคำตอบ รวมถึงรหัสข้อผิดพลาดทั้งหมดที่ใช้ได้