0

When i send the mail i get this error. I want to send mail from my program. How can i do it ? I get this referance :

https://www.oodlestechnologies.com/blogs/Send-Mail-in-Android-without-Using-Intent

What is my mistake ? So , i can change my codes if there is any example too .

LogCat,

 FATAL EXCEPTION: Thread-2
        Process: com.com.aa.aa., PID: 29810
        java.lang.NoClassDefFoundError: Failed resolution of: Ljava/awt/datatransfer/Transferable;
        at com.com.aa.aa..main.GMailSender.sendMail(GMailSender.java:109)
        at com.com.aa.aa..main.Fonksiyonlar$1.run(Fonksiyonlar.java:49)
        at java.lang.Thread.run(Thread.java:764)
        Caused by: java.lang.ClassNotFoundException: Didn't find class "java.awt.datatransfer.Transferable" on path: DexPathList[[zip file "/data/app/com.com.aa.aa.-tkR53Nh-qW6albGeAiUVLw==/base.apk"],nativeLibraryDirectories=[/data/app/com.com.aa.aa.-tkR53Nh-qW6albGeAiUVLw==/lib/arm, /data/app/com.com.aa.aa.-tkR53Nh-qW6albGeAiUVLw==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.com.aa.aa..main.GMailSender.sendMail(GMailSender.java:109) 
        at com.com.aa.aa..main.Fonksiyonlar$1.run(Fonksiyonlar.java:49) 
        at java.lang.Thread.run(Thread.java:764) 

My sendMail Function is ;

public synchronized void sendMail(String subject, String body,

                                      String sender, String recipients) throws Exception {

        try {

            MimeMessage message = new MimeMessage(session);

            DataHandler handler = new DataHandler(new ByteArrayDataSource(

                    body.getBytes(), "text/plain"));

            message.setSender(new InternetAddress(sender));

            message.setSubject(subject);

            message.setDataHandler(handler);

            BodyPart messageBodyPart = new MimeBodyPart();

            messageBodyPart.setText(body);

            _multipart.addBodyPart(messageBodyPart);


            // Put parts in message

            message.setContent(_multipart);

            if (recipients.indexOf(',') > 0)

                message.setRecipients(Message.RecipientType.TO,

                        InternetAddress.parse(recipients));

            else

                message.setRecipient(Message.RecipientType.TO,

                        new InternetAddress(recipients));

            Transport.send(message);

        } catch (Exception e) {


        }

    }
Phantômaxx
  • 37,901
  • 21
  • 84
  • 115
Zibian Domichi
  • 185
  • 1
  • 11

1 Answers1

0

Maybe a duplication of: JavaMail: Java.awt.datatransfer.Transferable doesn't exist

I think you forgot to add the 3rd library as mentioned in the article https://code.google.com/archive/p/javamail-android/downloads

Juky
  • 247
  • 1
  • 9