RPC and API

Baza danych modeli urządzeń

Interfejs Instances aplikacji towarzyszącej dla systemu macOS odwzorowuje identyfikatory modeli Apple na przyjazne nazwy (iPad16,6 -> „iPad Pro 13-calowy (M4)”, Mac16,6 -> „MacBook Pro (14-calowy, 2024)”). DeviceModelCatalog używa również prefiksu identyfikatora (a w razie jego braku — rodziny urządzenia), aby wybrać symbol SF dla każdego urządzenia.

Pliki w apps/macos/Sources/OpenClaw/Resources/DeviceModels/:

Plik Przeznaczenie
ios-device-identifiers.json Mapowanie identyfikatora iOS/iPadOS -> nazwa
mac-device-identifiers.json Mapowanie identyfikatora Mac -> nazwa
NOTICE.md Przypięte wartości SHA commitów źródła nadrzędnego
LICENSE.apple-device-identifiers.txt Licencja MIT źródła nadrzędnego

Źródło danych

Dane zostały skopiowane z repozytorium GitHub kyle-seongwoo-jun/apple-device-identifiers, objętego licencją MIT. Pliki JSON są przypięte do wartości SHA commitów zapisanych w NOTICE.md, aby kompilacje były deterministyczne.

Aktualizowanie bazy danych

  1. Wybierz wartości SHA commitów źródła nadrzędnego, do których mają zostać przypięte dane (jedną dla systemu iOS i jedną dla systemu macOS).
  2. Zaktualizuj plik apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md, wpisując nowe wartości SHA.
  3. Ponownie pobierz pliki JSON przypięte do tych commitów:
bash
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
  1. Potwierdź, że plik LICENSE.apple-device-identifiers.txt nadal odpowiada licencji źródła nadrzędnego; zastąp go, jeśli licencja źródła nadrzędnego uległa zmianie.
  2. Sprawdź, czy aplikacja dla systemu macOS kompiluje się bez błędów:
bash
swift build --package-path apps/macos

Powiązane

Was this useful?
On this page

On this page