ユーザーが評価を追加できるアプリを持っています。そのために登録する必要はありませんが、ボットが評価を簡単に操作できるようにしたくありません。
ユーザーが人間であることを合理的に確信できる方法はありますか (100% である必要はありませんが、リアクティブなヒューリスティック手法は使用したくありません)。CAPTCHA / サインイン / その他の操作は必要ありません。通常、これは不可能と言えますが、私のアプリは Android で実行されるため、何もしないよりはましだと思います。
Gmail アドレス。
私が最初に考えたのは、彼らの gmail アドレスを から取得するAccountManager
ことでしたが、彼らがそのメール アドレスを所有していることを確認する方法がわかりません。つまり、ボットがでっち上げのメールを私のサーバーに送信する可能性があるため、これはできないと思います。動作します(Googleアカウントを使用してアプリを認証させたくありません。これを行う可能性は低いです)。
GCM
次に考えたのは、Google の Cloud Messaging を使用することでした。デバイスからクラウド メッセージング ID を取得してサーバーに送信し、ランダムなクラウド メッセージをサーバーからデバイスに送り返し、そのメッセージをサーバーに送り返すことができます。これは少なくとも、彼らが gmail アカウントを持つ Android デバイスを持っていることを確認していると思います。これで十分です。
SMS
もちろん、彼らに SMS を送ることもできますが、それにはお金がかかりますし、シームレスであるということは、彼らのメッセージを読む許可が必要であることを意味します (特に評価はオプション機能なので)。
Android ライセンス サーバー
Licensing Verification Libraryを使用して、ユーザーが市場からダウンロードしたことを Google から署名付きで保証することは可能かもしれませんが、私のアプリの性質上、市場に出すことはできません。
デバイスID、EMEI、電話番号など
もちろんこちらは使えません。ボットはそれらを構成することができます!
したがって、GCM は最良の (そして唯一の) オプションのように見えます。他に考えられる人はいますか?