2017-02-19 13 views
0

2百の2枚の写真を保存したいのですが、レルムにこのデータを保存しない理由や制限はありますか?レルムに大きな写真を保存

代わりに、それらをファイルとして保存し、Realmでファイルパスを保存することもできます。実際にはRealmを使用しているので、Realmファイルをクリアすることがあります(ユーザーがサインアウトしたり、時にはマイグレーションを避ける場合など)。その後、ネットワークを介してデータを取得することで再構築します。 Amazon DynamoDBを使用してデータサーバー側を格納しています)。このため、レルムファイルをクリアするたびに、すべての写真を再フェッチする必要はありません。だからこそ私はこのアプローチに傾いていますが、私はこれを行うことでRealmをフルに活用していないと感じています。

私はこの質問があまりにも漠然としていないことを願っています。私は基本的にどのように私がレルムを使用していると大きな写真を格納する方法のガイダンスを探しています。 Realm Object Serverを使用していないのは、すでにDynamoDBを使用していたからです。

+2

これを行う感覚は何ですか?なぜあなたは200MBをユーザデバイスにダウンロードすると思ったのですか? – Divers

+0

申し訳ありませんが、私は一度に200MBをダウンロードするつもりはありません - 個々の写真が必要なのと同じです。私が言いたいことは、レルムに写真を保存することを躊躇する理由は、レルムファイルをクリアする必要がある場合、それらをすべて失い、最終的に再フェッチする必要があるからです。私は別のオプションは、単に写真のための別のレルムファイルを作成することだと思います。私はそれがRealmを使う正しい方法かどうかは分かりません。 –

+0

あなただけのために開くグライドまたはピカソのライブラリ。レルム内にファイルを格納するのは無意味です。 – Divers

答えて

0

レルムのDataまたはStringプロパティには、最大16MBのデータを格納できます。詳細はdocsを参照してください。

ただし、画像はお勧めできません。コメントに示唆されているように、イメージキャッシュライブラリの代わりにイメージキャッシュライブラリの1つを使用すると、すべてのイメージを再取得せずにカスタムキャッシュポリシーを定義することができます。

+0

ありがとう!それは非常に便利です!この[answer](http://stackoverflow.com/a/15200855/7513206)に基づいて、iPhone 4は約286 MBのメモリが使い果たされる可能性があります。つまり、高解像度の写真を置くことはおそらく良い考えではありませんレルムで イメージキャッシュにはすでにSDWebImageが使用されていますが、この場合はこれらの写真が常に存在することを確認したいので、キャッシュディレクトリに保存してファイルのパスを保存しますレルム ありがとうございました。 –

関連する問題