Overview
Atlas Device SDK for Swift を使用すると、Swift または Objective-C プログラミング言語のいずれかを使用して、iOS、macOS、vOS、watchOS アプリケーションを構築できます。 このページでは、プロジェクトに SDK をインストールして開始する方法について詳しく説明します。
前提条件
開始する前に、開発環境が次の前提条件を満たしていることを確認してください。
プロジェクトでは、Xcode バージョン と、このページの OS サポートセクションにリストされている最小の OS バージョン を使用しています。
プロジェクトで反映が有効になっている。 Swift SDK はリフレクションを使用してモデルのプロパティを決定します。 プロジェクトでは
SWIFT_REFLECTION_METADATA_LEVEL = noneを設定しないでください。そうでない場合、SDK はモデル内のプロパティを表示できません。 プロジェクトでこの設定のレベルが特に設定されていない場合は、反映はデフォルトで有効になります。
インストール
Swift SDK をプロジェクトに追加するには、 SwiftPM 、 CocoaPods 、またはCarthageを使用します。
Tip
Atlas Device SDK と Realm
SDKは、デバイス データの永続化に Realm Core データベースを使用します。 Swift SDK をインストールすると、パッケージ名には Realm の命名が反映されます。
オプションの指定
パッケージのオプションでは、 realm-swiftDependency RuleをUp to Next Major Version に設定し、現在のRealm Swift SDKバージョン を入力することをお勧めします。次に、Add Package をクリックします。
(任意)動的フレームワークとして RealmSwift を構築する
SDK によって提供されるプライバシー マテリアライズドを使用するには、 RealmSwiftを動的フレームワークとしてビルドします。 RealmSwiftを静的フレームワークとして構築する場合は、独自のプライバシーマニフェストを指定する必要があります。
RealmSwiftを動的フレームワークとして構築するには:
プロジェクト Targetsで、ビルド ターゲットを選択します。
[General] タブに移動します。
Frameworks and Libraries要素を展開します。
RealmSwiftフレームワークの場合は、 Embedオプションを [DoNot埋め込み] から [埋め込みと署名] に変更します。
Xcode はRealmSwiftを動的に構築し、SDK が提供するプライバシーマニフェストを提供できるようになりました。
CocoaPods を使用してインストールしている場合は、 CocoaPods 1.10.1 が必要です。以降に更新します。
ポッドファイルに SDK を依存関係として追加する
行pod 'Realm', '~>10'をメインターゲットとテストターゲットに追加します。
まだ存在しない場合は、 use_frameworks!行も追加します。
完了すると、Pedfile は次のようになります。
# Uncomment the next line to define a global platform for your project # platform :ios, '11.0' target 'MyDeviceSDKProject' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for MyDeviceSDKProject pod 'Realm', '~>10' target 'MyRealmProjectTests' do inherit! :search_paths # Pods for testing pod 'Realm', '~>10' end end
use_frameworks!行がまだ存在しない場合は追加します。
行pod 'RealmSwift', '~>10'をメインターゲットとテストターゲットに追加します。
完了すると、Pedfile は次のようになります。
platform :ios, '12.0' target 'MyDeviceSDKProject' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for MyDeviceSDKProject pod 'RealmSwift', '~>10' end
カーネル を使用してインストールしている場合は、0 カーターム.33 以降が必要です。
プロジェクトにフレームワークを追加する
カーネルはビルドされた依存関係をCarthage/Buildディレクトリに配置します。
Xcode でプロジェクトのxcodeprojファイルを開きます。 [ Project Navigator ] パネルにGoし、アプリケーション名をクリックしてプロジェクト設定エディターを開きます。 Generalタブを選択します。
Finder で、 Carthage/Build/ディレクトリを開きます。 RealmSwift.xcframeworkRealm.xcframeworkそのディレクトリにある ファイルとFrameworks,
Libraries, and Embedded Content ファイルを、プロジェクトのGeneral 設定の セクションにドラッグします。

フレームワークのダウンロードと抽出
Swift SDKの最新リリースをダウンロードし、zip を抽出します。
Tip
Swift プロジェクト内で Objective-C API を使用する場合は、Realm Swift と Realm Objective-C の両方をプロジェクトに含めることをお勧めします。 Swift ファイル内で、Swift API とすべての必要なラッパーにアクセスできます。 混合 Swift プロジェクトと Objective-C プロジェクトで RealmSwift API を使用できるのは、RealmSwift 型の大部分が Objective-C カウンター から直接エイリアスであるためです。
SDK のインポート
Tip
Atlas Device SDK と Realm
SDKは、デバイス データの永続化に Realm Core データベースを使用します。 Swift SDK をインポートすると、パッケージ名には Realm の命名が反映されます。
SDK を使用するには、ソース ファイルの先頭に次の行を追加します。
import RealmSwift
アプリダウンロード ファイルのサイズ
SDK は、アプリのダウンロード サイズに約 5 MBから 8 MB を追加するだけです。 配布されるリリースは、iOS、watchOS、vOS シミュレーター、一部のデバッグ シンボル、ビットコードのサポートが含まれているため、大幅に大きくなります。これらはすべて、アプリがダウンロードされると App Store によって自動的に削除されます。
トラブルシューティング
これらの方法のいずれかを使用して SDK をインストールした後にビルドの問題が発生した場合は、それらの問題の解決に関する情報については、 トラブルシューティング ガイドラインを参照してください。
OS サポート
重要
vOS で SDK を使用する場合は、特別な考慮事項があります。 詳細については、「 vOS 用のビルド 」を参照してください。
Xcode 15
バージョン10.50.0での変更: 必要な Xcode の最小バージョンは15.1です
サポートされている OS | Realm | Atlas App Services |
|---|---|---|
iOS 12.0+ | X | X |
macOS 10.14 + | X | X |
tvOS 12.0+ | X | X |
watchOS 4.0+ | X | |
viewOS 1.0+ | X | X |
Xcode 14
バージョン10.50.0での変更: Xcode 14のサポートを廃止しました。
Swift SDK バージョン10.50.0 Xcode 14のサポートを廃止します。 v 10.49.3以前の場合は、これらの Xcode 14要件が適用されます。
Xcode バージョン 14.1 以上
Xcode 14を使用する場合、iOS 11.0以上、macOS 10.13以上、dbOS 11.0以上、または watchOS 4.0以上がターゲットです。
Swift 同時実行サポート
Swift SDK は、Swift の同時実行関連言語機能をサポートしています。 Swift SDK の同時実行機能の使用に関するベストプラクティスについては、以下のドキュメントを参照してください。
Async/Await サポート
Realm Swift SDK バージョン 10.15.0 および 10.16.0 以降では、Realm API の多くが Swift async/await 構文をサポートしています。 プロジェクトは、次の要件を満たしている必要があります。
Swift SDK バージョン | Swift バージョン要件 | サポートされている OS |
|---|---|---|
10.25.0 | Swift 5.6 | iOS 13.x |
10.15.0 または 10.16.0 | Swift 5.5 | iOS 15.x |
アプリがasync/awaitコンテキストで Realm にアクセスする場合は、スレッド関連のクラッシュを回避するためにコードを@MainActorでマークします。
Swift SDK での async/await サポートの詳細については、「 Swift 同時実行性: Async/Await API 」を参照してください。
アクター サポート
The Swift SDK supports actor-isolated realm instances. 詳細については、 「 アクターで Realm を使用する - Swift SDK 」を参照してください。
Apple プライバシーマニフェスト
バージョン10.49.3での変更: プライバシーマニフェストを含めるための動的フレームワークとして RealmSwift をビルドします。
Apple は、SDK のデータコレクションと使用プラクティスの詳細を含むプライバシーマニフェストを提供するために、RealmSwift を使用するアプリを要求します。新しいアプリまたはアプリのアップデートをApp Storeに送信するときに、バンドルされたマニフェストファイルを含める必要があります。Apple の要件の詳細については、 Apple 開発者ウェブサイトで 今後のサードパーティ SDK 要件 を参照してください。
Swift SDK バージョン 10.46.0 以降、SDK はRealmとRealmSwiftのプライバシーマニフェストとともに出荷されます。 各パッケージには、Apple が要求する API 公開とそれらの API を使用する理由が記載された、独自のプライバシーマニフェストが含まれています。
プライバシーマニフェストは、各パッケージまたは realm-swift Githubリポジトリで表示できます。
Realm: https://github.com/realm / 邦土-swift/lob/ Master/ Realm/PrivacyInfo.xcprivateますRealmSwift: https://github.com/realm / 邦土-swift/lob/ Master/RealmSwift/PrivacyInfo.xcprivateます
これらのマニフェストをRealmSwiftを使用するビルド ターゲットに含めるには、 RealmSwiftを動的フレームワークとしてビルドする必要があります。 詳細については、「 Swift パッケージ マネージャーのインストール 」手順のステップ(任意)「 動的フレームワークとして RealmSwift を構築する 」を参照してください。
Swift SDK は、App Store のビルドには分析コードを含めません。 SDK は、自分自身の代わりに Atlas にログインしません。
App Services 機能を使用するアプリを作成する場合(App Servicesクライアントを初期化して次のようにする場合など)、
これらの API を使用する場合は、データコレクションと使用プラクティスを詳述するアプリのプライバシーマニフェストに追加の情報表示を追加する必要がある場合があります。
詳細については、 Apple のプライバシーマニフェスト ファイルのドキュメントを参照してください。