在 Swift 中从 Radius 中的 GeoFire 检索密钥

Retrieving Keys From GeoFire within Radius in Swift(在 Swift 中从 Radius 中的 GeoFire 检索密钥)
本文介绍了在 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 检索密钥的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Can`t copy file from bundle to documents directory in iOS(无法将文件从捆绑包复制到 iOS 中的文档目录)
How to copy a quot;Dictionaryquot; in Swift?(如何复制“字典在斯威夫特?)
Swift - How to mutate a struct object when iterating over it(Swift - 迭代结构对象时如何对其进行变异)
How to copy text to clipboard/pasteboard with Swift(如何使用 Swift 将文本复制到剪贴板/粘贴板)
Swift Cannot invoke #39;find#39; with an argument list of type #39;([Score], Score)#39; where Score is a struct(Swift 无法使用类型为“([Score],Score)的参数列表调用“find,其中 Score 是一个结构)
How to load image asynchronously with Swift using UIImageViewExtension and preventing duplicate images or wrong Images loaded to cells(如何使用 UIImageViewExtension 与 Swift 异步加载图像并防止重复图像或错误图像加载到单元格) - IT屋-程序员软