web-dev-qa-db-ja.com

キャプチャをiOSアプリケーションに統合するにはどうすればよいですか?

IOSアプリに Captcha を統合するためにグーグルで検索しましたが、適切な方法が見つかりませんでした。 reCAPTCHA でサインアップして、CaptchaのプラグインがiOSで利用できるかどうかを検索しましたか? iOS用のプラグインはそこに見つかりませんでした。 RNDのどこかで、「モバイルアプリには必要ない」ことを知りましたが、クライアントはアプリケーションにキャプチャを必要としているので、知りたいです:-

  • キャプチャをiOSアプリ/モバイルアプリに統合できるかどうか:-

    1. もし、そうなら? :それでは、それを統合するための適切な方法は何でしょうか。

    2. いいえの場合? :それでは、関連する理由は何ですか。

13
iShwar

IOSにはCaptcha用のAPIはありませんが、reCaptchaでさえiOS用のプラグインを提供していません。そして、多くの人々でさえ、モバイルアプリケーションにキャプチャを実装する必要はないと私に提案しました。私は同意しましたが、クライアントは私がしたことの言い訳を聞くことができなかったので、

  1. 単純に私はを使用して乱数を作成しました

    -(NSInteger)randomIntBetween:(NSInteger)min and:(NSInteger)max { return (NSInteger)(min + arc4random_uniform(max + 1 - min)); }

    その番号をラベルに配置し、提供されたtextFieldに同じ番号を入力するようにユーザーに求めました。一致が見つかった場合、キャプチャのプリンシパルが実行されます[反対側のユーザーは、キャプチャを統合する唯一のプリンシパルです]、それ以外の場合はi乱数を再生成し、ラベルに再度配置して、提供されたtextFieldに同じ番号を入力するようにユーザーに求めます。
    最終結果は次のようになります。

It Will Look Something Like This

これで、アイデアがより明確になる可能性があります。関数 "randomIntBetween"の出力を、番号が表示されているラベルに、いつユーザーはログインボタンを押して、textField(名前:番号を入力)のテキストが左側のラベルと一致するかどうかを認証します。一致する場合は、ユーザーがログインできるようにします。一致しない場合は、テキストフィールドのテキストとテキストをクリアします。次に、ラベルで、メソッド "randomIntBetween:"を呼び出して、左側のラベルに新しいランダム番号を割り当て、入力番号にテキストを入力するようにユーザーに要求します。テキストフィールド。

0
iShwar

私の知る限り、CAPTCHAメカニズムは、ボットがサービスやWebサイトを登録/使用/スパムするのを防ぐために使用されます。 CAPTCHAを使用すると、ユーザーがボットではなく実在の人物であることを確認できます。

ネイティブアプリケーションはウェブサイトと同じではなく、ネイティブアプリと同等の仕事をするボットについては聞いたことがありません。したがって、アプリのすべてのユーザーが実際に実在の人物であると想定して、CAPTCHAシステムを不要にすることができます(おそらくそうすべきです)。

11
Guilherme

私の場合、次のライブラリを使用します。

https://github.com/fjcaetano/ReCaptcha

それを処理するために隠されたウェブビューを使用します

3