2017-03-18 1 views
1

si j'essaye d'envoyer le courrier Toast se produit pour l'envoi d'email mais n'a pas reçu n'importe quel email. i seulement vérifier nouvel utilisateur est vérifiée au moment de votre inscription par e-mailComment vérifier l'adresse e-mail au moment de l'inscription de l'utilisateur? J'essaye de faire ceci. Il dit l'email envoie mais je ne reçois aucun email

Ma principale classe

public class MainActivity extends AppCompatActivity { 
EditText email,otp; 
Button register,submit; 
Session session=null; 
String data_email; 
Context context=null; 
ProgressDialog progressDialog=null; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    email=(EditText)findViewById(R.id.email); 
    otp=(EditText)findViewById(R.id.otp); 
    register=(Button)findViewById(R.id.register); 
    submit=(Button)findViewById(R.id.submit); 

    context=this; 
    submit.setVisibility(View.GONE); 
    otp.setVisibility(View.GONE); 

    submit.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      String abc=otp.getText().toString(); 
      if (abc.equals("1234")) 
      { 
       Toast.makeText(context, "User verification success", Toast.LENGTH_SHORT).show(); 
      } 
      else { 
       Toast.makeText(context, "User verification failed", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    }); 

    register.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      data_email=email.getText().toString(); 

      Properties properties=new Properties(); 
      properties.put("mail.smtp.host","smtp.gmail.com"); 
      properties.put("mail.smtp.socketFactory.port","465"); 
      properties.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory"); 
      properties.put("mail.smtp.auth","true"); 
      properties.put("mail.smtp.port","465"); 

      session=Session.getDefaultInstance(properties, new Authenticator() { 
       @Override 
       protected PasswordAuthentication getPasswordAuthentication() { 
        return new PasswordAuthentication("***********@gmail.com","**********"); 
       } 
      }); 

      progressDialog=ProgressDialog.show(context,"","Sending Email......",true); 
      RetrieveFeedTask feedTask=new RetrieveFeedTask(); 
      feedTask.execute(); 
     } 

     class RetrieveFeedTask extends AsyncTask<String,Void,String>{ 

      @Override 
      protected String doInBackground(String... strings) { 
       try 
       { 
        Message message=new MimeMessage(session); 
        message.setFrom(new InternetAddress("**********@gmail.com")); 
        message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(data_email)); 
        message.setSubject("CampusSync"); 
        message.setContent("your verification code is 1234","text/html; charset=utf-8"); 
        Transport.send(message); 
       } 
       catch (MessagingException e) { 
        e.printStackTrace(); 
       }catch (Exception e){ 
        e.printStackTrace(); 
       } 
       return null; 
      } 

      @Override 
      protected void onPostExecute(String result) { 
       progressDialog.dismiss(); 
       Toast.makeText(context, "Verification code send to yout email", Toast.LENGTH_SHORT).show(); 
       email.setVisibility(View.GONE); 
       register.setVisibility(View.GONE); 
       otp.setVisibility(View.VISIBLE); 
       submit.setVisibility(View.VISIBLE); 
      } 
     } 
    }); 
} 
} 

mon fichier xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:gravity="center_horizontal" 
android:orientation="vertical" 
tools:context="com.sevakk.www.email_verify.MainActivity"> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/email" 
      android:hint="email"/> 

     <Button 
      android:id="@+id/register" 
      style="?android:textAppearanceSmall" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="16dp" 
      android:text="Register" 
      android:textStyle="bold"/> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/otp" 
      android:hint="Enter OTP" 
      android:inputType="textPassword" /> 

     <Button 
      android:id="@+id/submit" 
      style="?android:textAppearanceSmall" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="16dp" 
      android:text="Submit" 
      android:textStyle="bold"/> 

      </LinearLayout> 

i ajouté cette bibliothèque dans l'application >> dossier lib & puis j'ajoute ces lignes en dépendance

compile files('libs/activation.jar') 
compile files('libs/additionnal.jar') 
compile files('libs/mail.jar') 
compile files('libs/android-support-v4.jar') 

Répondre

0

Encre votre façon d'envoyer des courriels est certainement incorrecte (c'est mon opinion). J'ai effectué la vérification par courriel en C# qui nécessitait:

* Adresse du serveur SMTP.

* Port d'écoute du serveur.

* Authentification de l'utilisateur.

Mais je ne vois aucune de ces questions ici!

Peut-être que vous devriez envoyer un message de diffusion pour l'envoi de courrier via Intent Class.