在我幼稚的 Android 初期,我认为这样做的方法是遍历每个对象,检查接近度是否在 X 范围内,如果是,则包括该对象。这是通过 Google Maps 和 GeoPoints 完成的。
也就是说,我知道这可能是最慢的方式。我搜索了 Android Proxmity 算法,但并没有真正得到太多。我正在寻找的是更有效的最佳选择。
有没有我找不到的图书馆?
如果没有,我应该将这些 Location 对象加载到 SQL 中,然后从那里开始还是将它们保存在 JSONArray 中?
一旦我建立了我最好的数据结构,他最好的方法是找到位于 X 英里用户的所有位置?
我不是要求剪切和粘贴代码,而是最有效的方法。然后,我可以偶然发现代码:)
我的第一个直觉是按区域对位置进行分组,但我不确定如何执行此操作。
我可能有数以万计的数据点。
非常感谢任何有助于朝着正确方向前进的帮助。
附带说明一下,在发现我一直在使用的远程 API 是……好吧……只是完全错误并从我的邻近搜索中省略了数据点之后,我到达了这个关口。我还意识到,如果只是放在手机上的数据点上,那么我可以允许用户在没有互联网连接的情况下运行应用程序,而只有 GPS,这将是一个巨大的优势。所以,所有的挫折都伴随着机遇!