0

Firebaseプロパティを持つデータベースにオブジェクトを保存しようとすると、このエラーが発生しAssetます。同様のエラーが次の質問に記載されています。

Firebase シリアル化するプロパティがクラスに見つかりません

Firebase リリース モードのオブジェクトでシリアル化するプロパティが見つかりません

他にもいくつかあります。

推奨される解決策のいくつかは、

  1. 変数宣言を public に変更する
  2. @Keepクラス宣言に追加
  3. -keepclassmembers class com.yourcompany.models.** { *; }Proguard ルールを追加する

しかし、これらのオプションはどれもうまくいきませんでした。

私が試したのは、使用しているクラスのレプリカである別のクラスを作成し、のを保持VaultするStringプロパティを持つことURLですがAsset、これはコードの重複と不要のようです。

この問題の解決策はありますか?

4

1 に答える 1

2

Contentful の Java および Android SDK のメンテナー、Mario Bodemann です。

あなたも提案したように、Firebase ユースケースと Contentful ユースケースの間で懸念を分離することをお勧めします。

このようにして、必要なモデルを Firebase に、必要なモデルを Contentful に、両方を混在させることなく確実に提供できます。私はそれをコードの繰り返しとは見なしません。データを繰り返しています。そして、それはさまざまなユースケースで問題ないはずです。

おそらく、必要に応じてある形式から別の形式に変換するためのいくつかのファクトリも便利でしょう。

そうでない場合は、1 つのアプリでの両方の使用についてもう少し詳しく教えていただければ、もう少しお役に立てるかもしれません...

こんにちは、マリオ

于 2017-09-27T09:57:35.893 に答える