Firebase数据库& Swift:将位置数据保存在数组中

时间:2018-02-28 15:23:24

标签: ios arrays swift firebase-realtime-database

大家好,我很难在Firebase上的数组中保存坐标。基本上我想跟踪我的位置,并在位置发生变化时保存纬度和经度。

这是我目前得到的:

"-R359orfmkXiwERe948fk" : {
    "coordinates" : {
          "-S6O96394fXd0489fj" : {
            "lat" : Lat1,
            "long" : Long1
          },
          "-S6496SX235Hh12G893sb" : {
            "lat" : lat2,
            "long" : long2
          },
          "-F6O3941SwKZ5cA29038kdsg" : {
            "lat" : lat3,
            "long" : lat3
          },

虽然这是我想要的形式:

"-385fjAhm85fwERe948fk" : {
        "coordinates" : [ [ Lat1,Long1], [Lat 2, Long2], [Lat 2, Long3]]

使用Firebase RealTime数据库和Swift 3

1 个答案:

答案 0 :(得分:0)

Firebase has no native support for arrays.

我建议您不要期望Firebase返回一个数组,而是建议您为Swift模型对象编写一个转换方法,在查询Firebase时可以使用该方法,Firebase会将您当前收到的字典转换为可以在整个过程中使用的数组。你的应用。

您需要进行类似的转换,然后将数组转换回字典格式以更新Firebase。