コンテンツにスキップ

Apple デバイス識別子を分かりやすい名前に変換する

コードの中で iPad16,6 や Mac16,6 といった文字列を見かけても、それが具体的にどのモデルなのかすぐに理解するのは大変です。ログや UI にそのまま表示してしまうと、開発者にとってもユーザーにとっても不親切なものになってしまいます。

こうした識別子を人間が読みやすい「フレンドリー名」に変換するために、macOS アプリでは専用のデータベースを利用しています。

  • kyle-seongwoo-jun/apple-device-identifiers リポジトリ(MIT ライセンス)
  • apps/macos/Sources/OpenClaw/Resources/DeviceModels/ ディレクトリへのアクセス
  • Swift ツールチェーン(ビルド確認用)

デバイスモデルのデータベースを更新する手順は以下の通りです。5 分ほどで完了します。

  1. 固定(Pin)したいアップストリームのコミットハッシュを特定します(iOS 用と macOS 用で各 1 つ)。
  2. apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md 内のコミットハッシュを更新します。
  3. 以下のコマンドを実行して、指定したコミットの JSON ファイルを再ダウンロードします。
Terminal window
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. apps/macos/Sources/OpenClaw/Resources/DeviceModels/LICENSE.apple-device-identifiers.txt がアップストリームの内容と一致しているか確認します(ライセンスが変更されている場合は差し替えてください)。
  2. macOS アプリが警告なくビルドできるか確認します。
Terminal window
swift build --package-path apps/macos

JSON ファイルの更新後にビルドエラーや警告が出る場合は、以下のコマンドでビルド状態を確認してください。

  • swift build --package-path apps/macos を実行して、クリーンにビルドできるかチェックします。

アップストリームのリポジトリでライセンスが変更された場合、ローカルの LICENSE.apple-device-identifiers.txt を手動で更新する必要があります。

不明な点がある場合は、AI Setup Assistant を活用してください。

  • apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md の確認
  • apps/macos/Sources/OpenClaw/Resources/DeviceModels/ 内の JSON 構造の確認
OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。