ออบเจ็กต์อินเทอร์เฟซของผู้จัดจำหน่าย

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

การออกแบบวัตถุ VINTF

ออบเจ็กต์ VINTF รวบรวมข้อมูลบางอย่างที่ต้องการโดยตรงจากอุปกรณ์ แง่มุมอื่น ๆ เช่นรายการจะอธิบายแบบคงที่ใน XML

รูปที่ 1. Manifests เมทริกซ์ความเข้ากันได้และข้อมูลที่รวบรวมได้ของรันไทม์

การออกแบบอ็อบเจ็กต์ VINTF จัดเตรียมสิ่งต่อไปนี้สำหรับส่วนประกอบของอุปกรณ์และเฟรมเวิร์ก:

สำหรับอุปกรณ์ สำหรับ Framework
  • กำหนดสคีมาสำหรับคอมโพเนนต์แบบคงที่ ( ไฟล์รายการอุปกรณ์ )
  • เพิ่มการสนับสนุนเวลาสร้างสำหรับการกำหนดไฟล์รายการอุปกรณ์สำหรับอุปกรณ์ที่กำหนด
  • กำหนด API ที่สืบค้นได้ในรันไทม์ที่ดึงไฟล์รายการอุปกรณ์ (พร้อมกับข้อมูลที่รวบรวมได้ของรันไทม์อื่น ๆ ) และรวมเข้ากับผลลัพธ์การสืบค้น
  • กำหนดสคีมาสำหรับคอมโพเนนต์แบบคงที่ ( ไฟล์ manifest ของเฟรมเวิร์ก )
  • กำหนด API ที่สอบถามได้ที่รันไทม์ที่ดึงไฟล์ manifest ของเฟรมเวิร์กและแพ็กเกจลงในผลลัพธ์คิวรี

อ็อบเจ็กต์ VINTF ต้องเชื่อถือได้และให้ข้อมูลที่ครบถ้วนเหมือนกันโดยไม่คำนึงว่าอ็อบเจ็กต์จะถูกร้องขอเมื่อใด (ดูคำ เตือน )

รายการและเมทริกซ์

ตั้งแต่ Android 8.0 รันไทม์ API จะค้นหาสิ่งที่อยู่ในอุปกรณ์และส่งข้อมูลนั้นไปยังเซิร์ฟเวอร์อัปเดต Over-the-Air (OTA) และผู้ที่สนใจอื่น ๆ (เช่น CTS DeviceInfo ) ข้อมูลบางอย่างถูกดึงมาที่รันไทม์และข้อมูลบางส่วนถูกกำหนดแบบคงที่

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

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

ส่วนนี้ประกอบด้วยรายละเอียดต่อไปนี้เกี่ยวกับรายการและเมทริกซ์:

  • Manifests กำหนดรายการอุปกรณ์รายการเฟรมเวิร์กและสคีมาไฟล์รายการ
  • เมทริกซ์ ความเข้ากันได้ กำหนดสคีมาสำหรับเมทริกซ์ความเข้ากันได้
  • FCM Lifecycle ให้ รายละเอียดว่า HIDL HAL ถูกเลิกใช้งานและลบออกอย่างไรและไฟล์ FCM ได้รับการแก้ไขอย่างไรเพื่อให้สอดคล้องกับสถานะของเวอร์ชัน HAL
  • การพัฒนา DM อธิบายวิธีที่ผู้จำหน่ายสามารถกำหนดและประกาศเวอร์ชัน FCM เป้าหมายในรายการอุปกรณ์สำหรับอุปกรณ์ใหม่หรือใช้เวอร์ชัน HAL ใหม่และเพิ่มเวอร์ชัน FCM เป้าหมายเมื่ออัปเกรดอิมเมจผู้จำหน่ายสำหรับอุปกรณ์เก่า
  • กฎการจับคู่ กำหนดกฎสำหรับการจับคู่ที่ประสบความสำเร็จระหว่างเมทริกซ์ความเข้ากันได้และรายการ