2016-07-29 7 views
1

Realmを手動でインストールしましたが、これは私のメインアプリケーションで動作しています。しかし、今日の拡張では、私もRealmSwiftをインポートすることはできません。この質問が初心者向けの質問である場合はお詫びしますが、ウェブを検索していて、適切な更新版が見つからない場合はお詫びします。私はを読みましたが、それは1年前に書かれており、もう動作しません。Realm in today extension

したがって、主アプリと拡張機能の間でレルムを使用してデータを共有するにはどうすればよいですか?

ありがとうございました!

答えて

4

Realm Swiftを使用していないにもかかわらず、SwiftにブリッジされたObjective-Cバージョンを使用しています)、RealmとiOS 8の拡張機能を使用する原則は、そこにある情報は古くなっています。考慮すべき

主なポイント:すべての意図や目的のために

  1. 、今日拡張がメインのアプリから完全に独立したアプリです。その操作に完全に自己完結できる必要があります。
  2. 動的フレームワークバージョンを使用している限り、RealmSwift.frameworkのコピーをメインアプリと拡張機能の両方にリンクできます。
  3. レルムファイルをcontainerURLForSecurityApplicationGroupIdentifierのURLに保存するように設定していることを確認する必要があります。これは、メインアプリと拡張機能がファイルを共有できる唯一の場所です。
  4. 今日の拡張機能は技術的に別のアプリだから、あなたが作ったObjectサブクラスがメインアプリと拡張機能の 'ソースのコンパイル'の両方のビルド段階に含まれていることを確認してください。

さらに詳しい説明が必要な場合は教えてください。 :)

+0

こんにちはTiM、返信いただきありがとうございます!本当に役に立ちました! (:しかし、1つの質問がありますが、どのようにしてレルムパスを設定するのですか?現在、RLMRealm.setDefaultRealmPath()はRealmSwiftでもう動作しないためです。作者は 'let directory:NSURL = NSFileManager.defaultManager()。containerURLForSecurityApplicationGroupIdentifier(" group.it.fancypixel.Done ")! をrealmPath = directory.pathにしましょう!.stringByAppendingPathComponent(" db.realm ") RLMRealm.setDefaultRealmPath(realmPath ) ' これ以上は動作しません。ありがとう! –

+1

心配しないで!ああ、それはこのチュートリアル以来Realmで変わったことの1つです。 'Realm'を設定するためのコードはRealm Swで利用できますift docsページ:https://realm.io/docs/swift/latest/#realm-configuration – TiM

+0

ああ、ありがとう!今すぐ使えるようになった。初心者の質問に対する謝罪、私は最近プログラミングを始めたばかりです。 (: –

関連する問題