Something I just discovered is that @Embedded
fields in Room entities can themselves contain @Embedded
fields. For example:
data class Post( @Embedded val media: Media ) data class Media( @Embedded val metadata: Metadata ) data class Metadata( val resolution: String )
works as you would expect, with resolution
being pulled up to the Post
entity table. Not sure how deeply @Embedded
you can go, or if there are any performance consequences to this, but a neat trick!