0

私のプロジェクトには 2 つのポッドがあります。1 つはYapDatabaseキー値ストレージ用です。
2つ目は、APAddressBook電話帳を扱うことです。

APContact電話帳の連絡先をオブジェクトとして抽出し、 に保存したいと考えていますYapDatabase
問題はYapDatabase、保存するオブジェクトを独自の方法 (サブクラスであること) を使用してシリアル化することです。 myを のサブクラスに
変更したいのですが、それらは 2 つの異なるポッドにあります。APContactYapDatabaseObject


エラーなしでインポートOTRYapDatabaseObject.hするに はどうすればよいですか?APContact"OTRYapDatabaseObject.h" file not found

ありがとう

4

1 に答える 1

0

YapDatabase プロジェクトは基本クラスを強制しません。つまり、YapDatabaseObject少なくとも公式の API の一部ではないという意味では、というようなものはありません。

YapDatabase 自体が強制する唯一の要件は、構成されたserializer&deserializerがオブジェクトをデータ BLOB に変換できることです。

ウィキ記事「オブジェクトの保存」には、これに関する詳細情報があります: https://github.com/yapstudios/YapDatabase/wiki/Storing-Objects

しかし要点は、YapDatabase には構成可能なserializer&deserializerがあり、ニーズに合わせてカスタマイズできるということです。

typedef NSData* (^YapDatabaseSerializer)(NSString *collection, NSString *key, id object);
typedef id (^YapDatabaseDeserializer)(NSString *collection, NSString *key, NSData *data);

電話帳の連絡先を APContact オブジェクトとして抽出し、YapDatabase に保存したい

APContactはかなり基本的な NSObject であり、パブリック プロパティのみで構成されているようです。したがって、目標を達成するために本当に必要なのは、APContact オブジェクトのシリアル化と逆シリアル化を実行できるコード (プロジェクト内) だけです。そして、YapDatabase のシリアライザーとデシリアライザーを微調整して、必要に応じてカスタム APContact シリアライゼーションとデシリアライゼーションを使用します。

于 2016-02-04T18:53:14.147 に答える