问题标签 [geofire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 以嵌套样式执行 firebase 查询。最佳实践?
我正在 Instagram 上做一个练习应用程序,比如 firebase 和 swift 上的应用程序。我的问题是我发现自己嵌套了我的firebase“observeSingleEventOfType”以获得我需要的所有数据,以便我可以将它放在我的“Post Class”中。我想知道是否有更好的方法来做这件事,因为加载一篇文章似乎需要很多时间?(我正在抓取一个信息,等待,然后抓取下一个,等待,然后抓取下一个,等待,抓取下一个......并将所有内容作为一个帖子项目放在链的末端)
在初始加载时,我需要位置、热门评论、用户是否喜欢帖子、用户是否关注帖子。目前我正在做的是
-> 创建地理查询,获取地理信息。在完成块内,我有一个 observeSingleEventOfType 来从我的帖子节点中查找信息并将其存储为字典。在这个完成块中,我创建了另一个observeSingleEventOfType 调用来获取最高评论,然后在这个完成块中,我创建另一个observeSingleEventOfType 来查看用户是否关注该帖子。然后在这里面,我有所有的数据要存储在我的 Post 类中,看起来像
这是我的 Json 结构。
我这样做的原因是Json数据没有嵌套。作为一种可能的替代方法,是否可以在后台获取帖子异步的所有数据并在该帖子的所有信息准备好时返回它?我不认为我能做到这一点,因为你无法保证什么时候回来。这就是为什么我在彼此的完成块中一一抓取数据的原因?
谢谢,
android - 如何检索距离我 0.5 公里范围内的帖子?
我正在保存用户发布的帖子的坐标。我正在生成一个推送 ID,然后使用它来保存帖子的数据和地火坐标。
我只想显示那些在它们半径 0.5 公里内的帖子。我正在使用GeoFire
相同的库,但我无法完成任务。
这是我生成推送 id 的方式:
itemID = databaseReferenceRequests.push().getKey();
以下是我使用它来保存地理坐标以及帖子数据的方法:
它是这样保存的:
问题是,当我尝试仅获取距离我 0.5 公里范围内的那些帖子时,它并没有发生,并且无论是近还是远的所有帖子都被检索到。
这是我检索它的方式:
这是错误:
请让我知道如何仅检索用户 0.5 公里以内的帖子?
angularjs - 如何将 Angular 地理定位指令与谷歌地图一起使用?
我正在使用 Angular 地理定位来获取位置。其返回位置的经纬度。我想使用这个纬度和经度显示地图。还想显示一个 5 公里的圆圈。看看我的代码index.html
索引.js
ngGeolocation.js
我该怎么做?请给我一些解决方案。
android - 尝试使用 GeoQuery 检索数据时在空对象引用上获取“int java.lang.String.length()”
我正在使用GeoFire
'sgeoFire.queryAtLocation()
方法从我的FirebaseDatabase
.
问题是我正在java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
尝试这样做。
这是我的代码:
我试图找出问题所在,但我无能为力。
什么可能是错的?
请告诉我。
ios - 退出 Firebase 块后查询数据被删除
在将结果传递给 GeoFire 之前,我运行了一个 firebase 查询来检索用户存储的搜索半径。它看起来像这样:
第一个打印行打印出我存储的半径(在本例中为 4.xxxxxx),但它在括号外的第二个打印行之后打印。所以我在控制台中的结果最终看起来像:
为什么是这样?我在使用 firebase 时遇到了类似的问题,并使用 ObserveReadyWithBlock 解决了这个问题,但这是我第一次在 Firebase 中看到这个问题。
谢谢你的帮助!
android - GeoFire ListView Query 不在列表视图中显示文本
我正在创建一个 Firebase GeoFire 查询以在 ListView 中显示结果。我从emanuelet得到了这个 ListView 示例。我已经让它与 emanuelet 共享的要点一起工作,现在我还获得了 geoQuery 的 logcat 中的值。
这就是我在 firebase 上构建 GeoFire 数据的方式:
这是我的 GeoQuery 片段。
这是我正在使用的 ItemListAdapter,它扩展了自定义 FirebaseListAdapter。
这是我用于 GeoQueries 的 emanuelet 的自定义 FirebaseListAdapter。
这是模型类帖子
我是 firebase 环境的新手,这些 GeoQueries 与 Parse 结构完全不同,我很困惑,请帮我解决这个问题。即使我检查了xml布局也是正确的。它也准确地向我显示了 Logcat 中显示的列表项的数量。
android - Firebase android如何一次从键列表中获取数据
我正在使用 firebase geofire 库根据位置获取密钥,但是由于每次我必须获取密钥引用 firebase 并取回对象并将其设置为 listview 时,都会在 onKeyEntered() 事件中返回数千个密钥变得非常慢。我尝试在 onKeyEntered() 中评论所有其他工作,以查看 geofire 的速度有多快,然后我对收到的 900 毫的所有回调感到惊讶。
那么现在使用 onKeyEntered() 回调中传递的键从 firebase 获取数据并将其设置为 listview 的最佳优化方法是什么,这样即使对于数千个条目,listview 也应该快速加载
我在每个回调中都想到了 AsyncTask 将获取数据的工作交给 AsyncTask 并继续执行下一个回调键并执行相同操作,但不确定那是正确的。
或者只加载几个然后作为滚动加载也是一个好主意,但是geofire从整个数据库中返回密钥,所以没有选择只获取几个最新的,所以不知道如何实现它。
这是我正在尝试的,但列表视图加载速度非常慢。
android - 如何限制 GeoFire for Android 返回的键范围?
我端到端地遵循了这个文档,并且还在 StackOverflow 上提出了超过 6-7 个与此问题相关的问题。我还写了一封邮件给 Firebase 支持。
我将一些数据与GeoFire
坐标一起保存在FirebaseDatabase
. 它是这样保存的:
现在,我正在尝试使用以下代码检索它:
问题是距离我 1000 公里外发布的帖子也被检索到,距离我 0.1 公里外发布的帖子也被检索,尽管只有 0.5 公里内发布的帖子应该被检索显示。
如何做到这一点?
android - 限制从 GeoFire 查询的项目数量
我在同一个位置有很多条目。我只想使用 Geofire 获得 10 个最新添加的项目。我知道使用 Query.limitToLast() 可以通过 firebase 轻松完成,但我不知道如何使用 Geofire 来完成。
如果不可能,您有什么我可以申请的解决方法吗?
swift - 使用 Geofire/Firebase 收集用户列表
我有一个名为 User 的类,它具有使用 GeoFire 获取附近所有食品卡车的功能。我使用 observeReadyWithBlock 获取 GeoFire 返回的卡车 ID,并使用 Firebase 获取其余信息。但是,当我在添加名称和描述后从我的卡车对象数组中访问其中一辆卡车时,看起来 xCode 告诉我该数组为空。
我计划在其他控制器类中使用这组附近的卡车,以填充表格,向用户显示所有附近的卡车和一些基本信息。
如何正确填充我的卡车数组,根据下面的代码我可能会出错。非常感谢!