0

使用 Foursquare API,有什么方法可以确定用户离他签到的地点有多远?返回的checkin对象没有任何指示用户 GPS 坐标是什么。

4

3 回答 3

3

Foursquare 故意不公开“作弊”位或用户设备通过 API 报告与场地的距离。绝大多数foursquare用户不会作弊,用户报告的位置与场地位置之间的大多数“不规则”是由于GPS精度差或用户在某个地点进行“后签到”。他们所在的位置,但忘了早点入住。

我对开发人员的建议是:作弊是要么忽略它和/或在事后检测它。

  • 忽略作弊:尝试检测作弊的成本/收益比通常不值得。不仅要努力建立一个有效的系统,而且你会经常出现误报,惩罚合法使用,导致你剥夺用户试图按预期使用系统的权利,这不是他们自己的过错。如果你仍然担心,那么你可以设计你的系统,让用户要么通过作弊获得很少的收益(他们只是剥夺了自己,或者奖励是物质的,所以他们一无所获)或者会有反对作弊的社会压力(例如foursquare的朋友-范围内的排行榜意味着如果用户公然作弊,朋友们通常会很清楚,从而抵消了作弊用户的任何实际利益)

  • 事后检测作弊:当您可以查看用户的整个活动而不是尝试在每次签到时做出决定时,您将有更好的运气/精确检测作弊事后。经常作弊的用户应该很容易通过使用简单规则的周期性工作来检测。一个在 100 次签到中作弊的用户将更难被发现,但无论您选择采用何种机制,这都是正确的(而且偶尔的假阴性比偶尔的假阳性更好)

于 2012-04-12T15:43:32.170 回答
0

也许。

来自Checkin 响应对象的 API 文档

签入响应

location 可选如果此签入的类型是“shout”或“venueless”,则此字段可能存在,并且可能包含 lat、lng 对和/或名称,提供有关用户当前位置的非结构化信息。

于 2012-04-11T23:37:50.397 回答
0

我认为使用当前 API 进行正常签入是无法做到的。ll(纬度和经度)甚至不是当前 API 版本中签入的必填字段。

于 2012-04-12T10:51:51.817 回答