Foursquare APIを使用して、ユーザーがチェックインした場所からどれだけ離れているかを判断する方法はありますか?返されたcheckin
オブジェクトには、ユーザーのGPS座標が何であったかが示されていません。
3 に答える
Foursquare は意図的に「チート」ビットや、ユーザーのデバイスが API を介して会場から報告した距離を公開しません。foursquare のユーザーの大多数は不正行為を行っておらず、ユーザーの報告された場所と会場の場所との間の「不規則性」の大部分は、GPS の精度が低いためか、ユーザーが「ポストチェックイン」を行っているためです。彼らがいた場所ですが、以前にチェックインするのを忘れていました。
開発者への私のアドバイス: 不正行為は、それを無視するか、事後に検出することです。
チートを無視する: チートを検出しようとする費用対効果は、一般的に価値がありません。効果的なシステムを構築するための努力であるだけでなく、正当な使用にペナルティを科す偽陽性が頻繁に発生し、意図したとおりにシステムを使用しようとしているユーザーの権利を奪うことになります。不安が残る場合は、ユーザーが不正行為によってほとんど得をしないようにシステムを設計することができます (彼らは自分自身を奪うだけであるか、報酬は物理的であるため何も得られません)。スコープ付きリーダーボードは、ユーザーが露骨に不正行為を行っている場合、友人には一般的に明らかであることを意味し、不正行為を行ったユーザーへの実際の利益を無効にします)
事後に不正行為を検出する: チェックインごとに決定を下すよりも、ユーザーのアクティビティ全体を確認できる場合、事後的な不正行為をより正確に検出できます。チートを頻繁に行うユーザーは、単純なルールを使用した定期的なジョブでかなり簡単に検出できるはずです。100 回のチェックインに 1 回不正行為を行うユーザーは検出が難しくなりますが、採用するメカニズムに関係なく、これは事実です (また、たまに偽陽性が発生するよりも、たまに偽陰性が発生する方がよいでしょう)。
多分。
Checkin 応答オブジェクトの API ドキュメントから:
チェックイン応答
location オプションこのチェックインのタイプが「shout」または「venueless」の場合、このフィールドが存在する可能性があり、緯度、経度のペアおよび/または名前を含むことがあり、ユーザーの現在の場所に関する構造化されていない情報を提供します。
現在のAPIでは通常のチェックインではできないと思います。(緯度と経度) は、現在の API バージョンll
でのチェックインの必須フィールドでさえありません。