如何将日期数据类型的房间实体备份到 Firebase 实时数据库 (Kotlin)

问题描述 投票:0回答:1

我需要将我的房间数据库表的副本发送到 firebase 实时数据库,但当我的房间数据库上有日期数据类型时它不起作用。 我正在使用 Kotlin 和 Android Studio。拜托,我需要一种清晰的方法来将具有日期数据类型的对象列表从 room 发送到 firebase 实时数据库。

这是我的数据结构


@Entity
data class Bill(
   @PrimaryKey
    val id:Date,
    var name:String,
    var category: String,
    var price:Long,
    var count:Int,
    var total:Long,
    var date: LocalDate
)

我有关于具有相同变量的 firebase 的参考,但不知道为 id 和日期变量选择什么数据类型,也不知道如何从 room 转换为 firebase 实时数据库接受。

我搜索了很多,没有找到如何解决它的清晰结构。 我知道 firebase 数据库不接受日期数据类型,但我希望有一种方法可以在发送到 firebase 时转换日期类型。我将其作为完整的对象列表而不是对象发送。

谢谢

firebase kotlin android-room
1个回答
0
投票

我不知道为 id 和日期变量选择什么数据类型,也不知道如何从 Room 转换为 Firebase 实时数据库接受的数据类型。

遗憾的是,DateLocalDate 不是 Firebase 实时数据库中支持的数据类型。您可以使用的是 ServerValue#TIMESTAMP,如我在以下帖子中的回答中所解释的:

或任何其他 Unix 时间戳值,表示自 Unix 纪元以来的时间(以毫秒为单位)。

© www.soinside.com 2019 - 2024. All rights reserved.