在 Swift 中从 Radius 中的 GeoFire 检索密钥 [英] Retrieving Keys From GeoFire within Radius in Swift

查看:18
本文介绍了在 Swift 中从 Radius 中的 GeoFire 检索密钥的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下 Firebase 数据库 JSON 数据结构:

I have the following Firebase Database JSON data structure:

{
  "Post List" : {
    "-KUlvg8mCEGfY5ZSKCou" : {
      "addedByUser" : "7llQbPdy2NV7aO337h7ap0qLOhC3",
      "content" : "Post1",
      "cost" : "$450",
      "duration" : "Daily",
      "latitude" : "25.0879721592719",
      "longitude" : "55.1487715855458",
      "number" : "01234567890",
      "timestamp" : "Posted on: Sun 23 Oct"
    }
  },
  "Post Locations" : {
    "-KUlvg8mCEGfY5ZSKCou" : {
      ".priority" : "thrnwznh58",
      "g" : "thrnwznh58",
      "l" : [ 25.0879721592719, 55.1487715855458 ]
    }
  },
  "User Locations" : {
    "7llQbPdy2NV7aO337h7ap0qLOhC3" : {
      ".priority" : "thrnwypqu9",
      "g" : "thrnwypqu9",
      "l" : [ 25.0829547120321, 55.1505315855337 ]
    }
  }
}

我希望有一个 GeoFire 查询,它将返回 1KM 半径内的所有键 [FIRAutoID's],例如的用户位置"这些帖子是静态的,一旦设置了用户位置,它也将被修复.从半径查询结果中,我期望返回-KUlvg8mCEGfY5ZSKCou",这样我就可以参考帖子详细信息.希望这是有道理的.非常感谢,D.无法在网上找到很多关于 GeoFire 的信息...看起来它仍处于初始阶段?...

I am looking to have a GeoFire query which will return all the keys [FIRAutoID's] within a radius of 1KM, for e.g. of "User Locations" these Posts are static and once the user location is set it will also be fixed. From the radius query result I am expecting to return "-KUlvg8mCEGfY5ZSKCou" so I can then make a reference the Post Details. Hope this makes sense. Many thanks, D. Cant find much online about GeoFire... looks like its still in the initial stages?...

推荐答案

想通了

func geoFireQuery() {

        let circleQuery = geoFire.query(at: self.myLocation, withRadius: 0.5)

        _ = circleQuery!.observe(.keyEntered, with: { (key: String?, location: CLLocation?) in

        print (key!)

    })

    circleQuery?.observeReady({
        print("All initial data has been loaded and events have been fired!")

    })

}

这似乎给了我我需要的东西.现在将这些键引用到 FBDB 的另一部分.:)

this seems to be giving me what I need. Now to reference those keys to the other part of the FBDB. :)

这篇关于在 Swift 中从 Radius 中的 GeoFire 检索密钥的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆