在Android

时间:2017-09-21 14:34:49

标签: android google-maps firebase-realtime-database algolia android-studio-2.3

我正在开发一个使用Google地图的导航应用程序。我正在尝试实施"我附近的用户位置"与申请。

我想使用Algolia服务使用GeoFire和Android&amp ;;来搜索地理位置火力地堡。

我已经在我的Algolia索引中成功存储了纬度和经度信息以及他们的文档指南。

但我不明白如何根据我当前的位置自动获取列表并映射位置(如algolia即时搜索的示例项目),而无需输入地名或任何地址。这是我目前的代码:

com.algolia.search.saas.Query query = new com.algolia.search.saas.Query().setAroundLatLng(new com.algolia.search.saas.Query.LatLng(lat,lng)).setAroundRadius(5000);

index.searchAsync(query, new CompletionHandler() {
     @Override
     public void requestCompleted(JSONObject jsonObject, AlgoliaException e) {

     }
});

1 个答案:

答案 0 :(得分:2)

您面临的问题是什么?你接下来要做什么?您在requestCompleted中获得的jsonObject将类似于:

{
  "hits": [
    {
      "firstname": "Jimmie",
      "lastname": "Barninger",
      "objectID": "433",
      "_highlightResult": {
        "firstname": {
          "value": "<em>Jimmie</em>",
          "matchLevel": "partial"
        },
        "lastname": {
          "value": "Barninger",
          "matchLevel": "none"
        },
        "company": {
          "value": "California <em>Paint</em> & Wlpaper Str",
          "matchLevel": "partial"
        }
      }
    }
  ],
  "page": 0,
  "nbHits": 1,
  "nbPages": 1,
  "hitsPerPage": 20,
  "processingTimeMS": 1,
  "query": "jimmie paint"
}

在Java中,您可以像jsonObject.getObject("hits")一样访问它。

您使用的是instantsearch-android还是algoliasearch-client-android?您应该使用instantsearch-android,更容易将搜索链接到您的UI。 Here's GoogleMaps的一个例子。