在com.contentful.vault.Asset

时间:2017-09-27 09:13:09

标签: java android firebase-realtime-database contentful contentful-vault

尝试在具有Firebase属性的Asset数据库上保存对象时出现此错误。 以下问题中记录了类似的错误:

Firebase No properties to serialize found on class

Firebase No properties to serialize found with object in release mode

和其他一些人。

建议的一些解决方案是

  1. 将变量声明更改为public
  2. @Keep添加到类声明
  3. 在Proguard-rules
  4. 中添加-keepclassmembers class com.yourcompany.models.** { *; }

    但这些选项都没有对我有用。

    我尝试过的是创建另一个类,它是我用于Vault的类的副本,然后有一个String属性,其中包含URL Asset但这似乎是代码的重复和不必要的。

    这个问题有解决方法吗?

1 个答案:

答案 0 :(得分:2)

我是Mario Bodemann,他是Contentful的Java和Android SDK的维护者。

我建议您将Firebase用例和Contentful用例之间的问题分开,正如您所建议的那样。

通过这种方式,您可以确保为Firebase提供所需的模型,并使用所需的模型为Contentful提供内容,而无需混合两者。我不认为它是重复代码,你重复数据。对于不同的用例,这应该没问题。

根据需要,一些工厂可能会从一种形式转换到另一种形式也很方便。

否则,也许如果您可以在一个应用程序中分享更多关于两者的使用,我们可以帮助您更多...

问候, 马里奥