RPC and API
ฐานข้อมูลรุ่นอุปกรณ์
แอปคู่หูบน macOS จะแสดงชื่อรุ่นอุปกรณ์ Apple ที่อ่านเข้าใจง่ายใน UI ของ Instances โดยแมปตัวระบุรุ่นของ Apple (เช่น iPad16,6, Mac16,6) ไปเป็นชื่อที่มนุษย์อ่านได้
การแมปนี้ถูก vendor มาเป็น JSON ภายใต้:
apps/macos/Sources/OpenClaw/Resources/DeviceModels/
แหล่งข้อมูล
ปัจจุบันเรา vendor การแมปนี้มาจากรีโพสิตอรีที่ใช้สัญญาอนุญาต MIT:
kyle-seongwoo-jun/apple-device-identifiers
เพื่อให้บิลด์มีความกำหนดแน่นอน ไฟล์ JSON จะถูก pin ไว้กับ upstream commits ที่เฉพาะเจาะจง (บันทึกไว้ใน apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md)
การอัปเดตฐานข้อมูล
- เลือก upstream commits ที่คุณต้องการ pin ไว้ (หนึ่งรายการสำหรับ iOS และหนึ่งรายการสำหรับ macOS)
- อัปเดต commit hashes ใน
apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md - ดาวน์โหลดไฟล์ JSON ใหม่ โดย pin กับ commits เหล่านั้น:
IOS_COMMIT="<commit sha for ios-device-identifiers.json>"
MAC_COMMIT="<commit sha for mac-device-identifiers.json>"
curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${IOS_COMMIT}/ios-device-identifiers.json" \
-o apps/macos/Sources/OpenClaw/Resources/DeviceModels/ios-device-identifiers.json
curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${MAC_COMMIT}/mac-device-identifiers.json" \
-o apps/macos/Sources/OpenClaw/Resources/DeviceModels/mac-device-identifiers.json
- ตรวจสอบให้แน่ใจว่า
apps/macos/Sources/OpenClaw/Resources/DeviceModels/LICENSE.apple-device-identifiers.txtยังคงตรงกับ upstream (แทนที่ไฟล์นี้หากสัญญาอนุญาตของ upstream เปลี่ยนแปลง) - ตรวจสอบว่าแอป macOS บิลด์ผ่านอย่างสะอาด (ไม่มีคำเตือน):
swift build --package-path apps/macos