我目前正在开发一个应用程序(尚未上线),它允许用户创建项目并设置每个项目的位置。
我最初添加了一个与谷歌地图查找一起使用的自动完成字段,以帮助用户输入位置,它还会找到地点/位置的纬度和经度并将其显示在地图上。
此时我正在将位置、纬度和经度保存到数据库字段。
这使得用户体验非常直接。
但是,我现在认为这种存储自动完成位置的想法违反了 10.1.3 的Google Maps T&Cs。
我需要在我的列表页面中包含这些位置,并且 Google 允许出于性能目的进行短期缓存,但这肯定意味着我需要至少每 30 天为每个条目更新一次缓存或其他内容,这并不是一个真正的选择。
这也意味着位置数据属于谷歌,这限制了未来对该数据的任何使用(例如我网站上的一个 API)。
我想知道是否可以选择使用openstreetmap 数据获取完整位置(尽管我不确定它是否可用于提供自动完成功能),然后将其传递给谷歌地图查找,以便提供的位置可以将具有更宽松限制的 openstreetmap 自动完成保存到数据库中。但是,即使这一切都是可能的,如果 openstreetmap 自动完成功能未能找到 google 上存在的位置/地点,或者它的标签不同,那么用户可能会感到困惑。
我不确定这是否是一个选择。
我目前倾向于一个纯文本框,旁边显示一个示例位置,以便用户可以看到需要输入位置的程度(即完整地址),这样当它用于通过谷歌查找位置时,它将带回正确的纬度和经度,但当用户在列表页面上看到它时也会向他们提供信息。
这确实意味着位置字段内容可以存储在数据库中,但它更多地依赖于用户正确输入地址,如果他们没有正确输入地址,自动查找可能无法找到它和/或它在列表页面上可能对查看者不友好。
谁能提供更好的方法来帮助用户输入准确的位置(可以是有地址的地方或只是一个地址),这样它就不会违反条款和条件,并允许我的网站拥有地点?
谢谢