ページ内ナビ
概要
DeviceKitはUIDeviceを補完するSwiftのvalue-type libraryです。現在のdevice model、family、simulator、battery state/level、screen metrics、Face ID/Touch ID、disk space、eSIM supportなどを統一APIから判定できます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
Device.currentからmodel・family・simulatorを判定する
Device.currentで実機またはsimulator modelを取得し、isPhone/isPad/isPodやisSimulatorなどのpropertyでdevice familyと実行環境を判定できます。
出典:[2]
向いている用途
device model差によるUI・feature分岐やsupport情報表示が必要なiOS appに向く
device familyやhardware capabilityに応じたUI調整、diagnostics、support screen、simulator除外処理などをUIDevice周辺のad hoc codeへ分散させたくない場合に適します。
出典:[2]
導入前の確認
参考にした公式資料
- [1]devicekit/DeviceKit — GitHub repository(2026-10-06)
- [2]DeviceKit 5.9.0 — README(2026-10-06)
- [3]DeviceKit 5.9.0 — Package.swift(2026-10-06)
- [4]DeviceKit 5.9.0 release(2026-10-06)
- [5]DeviceKit MIT license(2026-10-06)
編集部からの補足
device差によるUI・feature分岐、diagnostics、support情報表示をまとめたいiOS appに向きます。5.9.0ではiPhone 18 Pro系やApple Watch新modelも追加されています。
3ステップで試す
- 1
DeviceKit 5.9.0をSwiftPMへ追加する
2026年9月端末対応を含む5.9.0をversion固定します。
.package(url: "https://github.com/devicekit/DeviceKit.git", exact: "5.9.0") - 2
現在のdeviceを取得する
Device.currentから実機またはsimulatorのmodelを取得します。
import DeviceKit let device = Device.current - 3
familyとsimulatorを判定する
device model、family、simulator状態を同じvalueから確認します。
print(device) print(device.isPhone) print(device.isSimulator)
成長
成長の推移 · 直近30日
4,733 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 6
- Open PR
- 24
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
カテゴリ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- CryptoSwift10,580 Stars
共通タグ 3件 · 共通カテゴリ 1件 · 同じ言語
AES・ChaCha20・SHA・HMAC・KDFなど標準暗号primitiveをPure Swiftで扱う
Swift - KeychainAccess8,253 Stars
共通タグ 3件 · 共通カテゴリ 1件 · 同じ言語
Apple Keychainへの保存・取得・accessibility・Face ID保護をSwift APIで扱う
Swift - CocoaLumberjack13,321 Stars
共通タグ 3件 · 共通カテゴリ 1件
console・os_log・rolling file・custom loggerへ同じDDLog APIから振り分けるApple向けlogging framework
Objective-C - Firebase Apple SDK6,926 Stars
共通タグ 3件 · 共通カテゴリ 1件
Auth・Firestore・Messaging・CrashlyticsなどFirebase servicesをApple appへ統合するSDK群
C++ - Swift Async Algorithms3,713 Stars
共通タグ 2件 · 共通カテゴリ 2件 · 同じ言語
AsyncSequenceへmerge・combineLatest・debounce・throttleなど時間/順序algorithmを追加する
Swift - Tauri111,593 Stars
共通タグ 2件 · 共通カテゴリ 2件
web frontendとRust native layerをsystem WebView上のdesktop/mobile appへまとめる
Rust
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。