สร้างอุปกรณ์แบบผสม Cuttlefish

หน้านี้จะอธิบายวิธีสร้างอุปกรณ์ไฮบริด Cuttlefish (CHD)

CHD เป็นอุปกรณ์ Cuttlefish เสมือนแบบไฮบริดที่เรียกใช้ อิมเมจระบบของอุปกรณ์จริงแทนอิมเมจระบบ Cuttlefish ใน HAL ของอุปกรณ์ ซึ่งมีข้อดีดังนี้

  • การพัฒนาและการทดสอบในช่วงแรก: CHD ช่วยให้สามารถพัฒนาและ ทดสอบซอฟต์แวร์ระบบรุ่นถัดไปได้ตั้งแต่เนิ่นๆ ก่อนที่ฮาร์ดแวร์จริงจะ พร้อมใช้งาน

  • ความสามารถในการปรับขนาด: CHD ช่วยให้ขยายความสามารถในการพัฒนาและการทดสอบได้ง่ายขึ้น

หากต้องการสร้าง CHD ให้ทำดังนี้

  1. สร้างไฟล์เป้าหมายสำหรับอุปกรณ์ Cuttlefish และอุปกรณ์จริง โดยใช้ make dist

  2. รวมไฟล์เป้าหมายทั้ง 2 ไฟล์เป็นไฟล์เป้าหมาย CHD แล้วสร้างรูปภาพ CHD จากไฟล์เป้าหมาย CHD โดยเรียกใช้สคริปต์ build_cf_hybrid_device.py

    python3 tools/treble/cuttlefish/build_cf_hybrid_device.py \
      --framework_target_files_zip <physical_device_target_files.zip> \
      --vendor_target_files_zip <cuttlefish_device_target_files.zip> \
      --otatools_zip <cuttlefish_otatools.zip> \
      --target chd \
      --output_dir <output_directory>
    

    สคริปต์นี้จะรวมไฟล์เป้าหมาย 2 ไฟล์เป็นไฟล์เป้าหมาย CHD โดยใช้ merge_target_files.py และสร้างรูปภาพ CHD จากไฟล์เป้าหมาย CHD โดยใช้ img_from_target_files