2016-04-05 9 views
0

私は電子メールの確認を開発中です。つまり、ユーザーがメールを入力すると、アプリはいくつかのランダムなコードでユーザーのメールにメッセージを送信します。 これは、ユーザーが画面を確認するためにこのOTPを提供する必要のある種類のOTPシステムです。アンドロイドアプリのメール確認

私の問題はメールを受信して​​いないことです。 私はLog.dで、メールとvalの値が有効な値を示しているが、私は自分のGmailでメールを受信して​​いない確認

private void sendEmail(String mail,String val) 
{ 
    Log.d("mail:",mail); 
    Log.d("val",val); 
    Intent i = new Intent(Intent.ACTION_SEND); 
    i.setType("message/rfc822"); 
    i.putExtra(Intent.EXTRA_EMAIL , new String[]{mail}); 
    i.putExtra(Intent.EXTRA_SUBJECT, "Welcome user"); 
    i.putExtra(Intent.EXTRA_TEXT , "Please enter the code "+val+" to verify your account"); 
    try { 
     startActivity(Intent.createChooser(i, "Send mail...")); 
    } catch (android.content.ActivityNotFoundException ex) { 
     Toast.makeText(Register.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show(); 
    } 



} 

register.javaのコードの下に使用しています。(私は自分を使用していますテスト用ID)。 ありがとう Deepak

+0

アクティビティチューザを取得していますか? – crashOveride

+1

一般に、ユーザーの電子メールをサーバーに送信する必要があり、サーバーは電子メールを送信する必要があります。ユーザーがそのOTPをアプリに入力すると、アプリはサーバーでコードをチェックする必要があります。 – Mehrdad

+0

私は4桁の数字を生成してそれを私の検証画面に渡そうとしています。ユーザは電子メールで受信した4桁の数字を入力して確認することができます。 –

答えて

0

@Mehrdadは、サーバーを使用する必要があります。

しかし、あなたはまだあなたのアプリから電子メールを送信したい場合は、この方法の問題点は、あなたのアプリにあなたのメールアドレスとパスワードを入れる必要があるということです。このanswer

に従ってください。

+0

ありがとう、私は今理解しています.. –