静的ライブラリを使用して CoreDataKit を作成しようとしています。
を含む:
- xcdatamodel またはモデル ファイル
- NSManagedObject またはエンティティ (
スタティック ライブラリはオブジェクト ファイルしか持てないため、モデル ファイルをスタティック ライブラリの一部にすることはできません。
それを実現するために、モデルファイルのみを持つ別のバンドルを作成し、このリンクを使用してこのバンドルを xcode プロジェクトにコピーしました ( iPhone の静的ライブラリのコアデータ)
ここで、Person エンティティの読み込み中に
let personEntity = NSManagedObject(entity: entity, insertInto: context) as! Person
以下のエラーが発生しました:
Unable to load class named 'MyStaticLibraryModels.Person' for entity 'Person'. Class not found, using default NSManagedObject instead.
および例外:
Could not cast value of type 'NSManagedObject_Person_' (0x600000243b40) to 'ONCoreDataKit.Person' (0x105d71a68).
もう 1 つのアプローチは、モデル ファイルを含むことができ、動的にロードできるフレームワークを使用することです。
動的フレームワークのロードには余分な時間がかかることがあるため、アクセスを高速化するために静的ライブラリを作成することに興味があります。