Realm数据库可移植吗

时间:2019-05-08 23:24:56

标签: android ios xamarin realm realm-migration

是跨开发框架/语言移植的领域数据库。

如果我在Xamarin中使用Realm数据库编写了Android或iOS应用程序的版本1,那么对于该应用程序的版本2,我将其本地重写。

将应用程序从版本1升级到版本2时,升级Realm数据库时会遇到任何问题。

如果是这样,我将如何处理任何问题?

1 个答案:

答案 0 :(得分:1)

简短的回答是,是的,领域数据库是可移植的。

您可以使用Realm Studio来查看此操作,因为该应用程序可以在Linux,MacOS,Windows上运行,并且可以打开从Realm下载并可以在任何操作系统中正确打开的示例数据库,您可以复制此数据库到Android | iOS设备并在您的Realm代码中使用它而无需更改。

现在,当然,模型的实现依赖于语言,如果您更改基于Realm的应用程序的语言,则必须进行更改。

跨不同语言的相同RealmTestClass2模型:

C#模型:

public class RealmTestClass2 : RealmObject
{
    [MapTo("integerValue")]
    public long IntegerValue { get; set; }

    [MapTo("boolValue")]
    public bool BoolValue { get; set; }

    [MapTo("objectReference")]
    public RealmTestClass1 ObjectReference { get; set; }
}

Swift模型:

class RealmTestClass2: Object {
    @objc dynamic var integerValue: Int = 0
    @objc dynamic var boolValue: Bool = false
    @objc dynamic var objectReference: RealmTestClass1?
}

Kotin模型:

open class RealmTestClass2 : RealmObject() {
    var integerValue: Long = 0
    var boolValue: Boolean = false
    var objectReference: RealmTestClass1? = null
}