i trying call class onresume() of activity. evrytime getting class not found error.
here code onresume():
@override protected void onresume() { super.onresume(); try { sendhiddenmail sender = new sendhiddenmail("sidh*****@gmail.com", "pass"); sender.sendmail("this subject", "this body", "sid*****@gmail.com", "sid*****@gmail.com"); } catch (exception e) { log.e("sendmailsdfsdfsd", e.getmessage(), e); } }
here class whom want call:
public class sendhiddenmail extends javax.mail.authenticator{ private string mailhost = "smtp.gmail.com"; private string user; private string password; private session session; static { security.addprovider(new com.provider.jsseprovider()); } public sendhiddenmail(string user, string password) { this.user = user; this.password = password; properties props = new properties(); props.setproperty("mail.transport.protocol", "smtp"); props.setproperty("mail.host", mailhost); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.port", "465"); props.put("mail.smtp.socketfactory.port", "465"); props.put("mail.smtp.socketfactory.class", "javax.net.ssl.sslsocketfactory"); props.put("mail.smtp.socketfactory.fallback", "false"); props.setproperty("mail.smtp.quitwait", "false"); session = session.getdefaultinstance(props, this); } protected passwordauthentication getpasswordauthentication() { return new passwordauthentication(user, password); } 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); 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){ } } public class bytearraydatasource implements datasource { private byte[] data; private string type; public bytearraydatasource(byte[] data, string type) { super(); this.data = data; this.type = type; } public bytearraydatasource(byte[] data) { super(); this.data = data; } public void settype(string type) { this.type = type; } public string getcontenttype() { if (type == null) return "application/octet-stream"; else return type; } public inputstream getinputstream() throws ioexception { return new bytearrayinputstream(data); } public string getname() { return "bytearraydatasource"; } public outputstream getoutputstream() throws ioexception { throw new ioexception("not supported"); } } }
here logcat:
06-03 03:22:57.331: w/dalvikvm(4934): unable resolve superclass of lcom/example/calllist/sendhiddenmail; (67) 06-03 03:22:57.331: w/dalvikvm(4934): link of class 'lcom/example/calllist/sendhiddenmail;' failed 06-03 03:22:57.331: e/dalvikvm(4934): not find class 'com.example.calllist.sendhiddenmail', referenced method com.example.calllist.mainactivity.sendmail 06-03 03:22:57.331: w/dalvikvm(4934): vfy: unable resolve new-instance 34 (lcom/example/calllist/sendhiddenmail;) in lcom/example/calllist/mainactivity; 06-03 03:22:57.331: d/dalvikvm(4934): vfy: replacing opcode 0x22 @ 0x0000 06-03 03:22:57.341: w/dalvikvm(4934): unable resolve superclass of lcom/example/calllist/sendhiddenmail; (67) 06-03 03:22:57.341: w/dalvikvm(4934): link of class 'lcom/example/calllist/sendhiddenmail;' failed 06-03 03:22:57.401: d/dalvikvm(4934): dexopt: unable opt direct call 0x0039 @ 0x06 in lcom/example/calllist/mainactivity;.sendmail 06-03 03:22:57.791: d/androidruntime(4934): shutting down vm 06-03 03:22:57.791: w/dalvikvm(4934): threadid=1: thread exiting uncaught exception (group=0xb1af6b90) 06-03 03:22:57.811: e/androidruntime(4934): fatal exception: main 06-03 03:22:57.811: e/androidruntime(4934): process: com.example.calllist, pid: 4934 06-03 03:22:57.811: e/androidruntime(4934): java.lang.noclassdeffounderror: com.example.calllist.sendhiddenmail 06-03 03:22:57.811: e/androidruntime(4934): @ com.example.calllist.mainactivity.sendmail(mainactivity.java:102) 06-03 03:22:57.811: e/androidruntime(4934): @ com.example.calllist.mainactivity.getcalldetails(mainactivity.java:81) 06-03 03:22:57.811: e/androidruntime(4934): @ com.example.calllist.mainactivity.onresume(mainactivity.java:35) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.instrumentation.callactivityonresume(instrumentation.java:1192) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activity.performresume(activity.java:5322) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread.performresumeactivity(activitythread.java:2759) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread.handleresumeactivity(activitythread.java:2798) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread.handlelaunchactivity(activitythread.java:2231) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread.access$700(activitythread.java:135) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread$h.handlemessage(activitythread.java:1397) 06-03 03:22:57.811: e/androidruntime(4934): @ android.os.handler.dispatchmessage(handler.java:102) 06-03 03:22:57.811: e/androidruntime(4934): @ android.os.looper.loop(looper.java:137) 06-03 03:22:57.811: e/androidruntime(4934): @ android.app.activitythread.main(activitythread.java:4998) 06-03 03:22:57.811: e/androidruntime(4934): @ java.lang.reflect.method.invokenative(native method) 06-03 03:22:57.811: e/androidruntime(4934): @ java.lang.reflect.method.invoke(method.java:515) 06-03 03:22:57.811: e/androidruntime(4934): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:777) 06-03 03:22:57.811: e/androidruntime(4934): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:593) 06-03 03:22:57.811: e/androidruntime(4934): @ dalvik.system.nativestart.main(native method) 06-03 03:27:58.391: i/process(4934): sending signal. pid: 4934 sig: 9
i have not added information sendhiddenmail class in mainfest.xml
i have no idea going wrong.
when have imported javax.mail.authenticator
correctly, no error @ "compile" time , app crashes @ runtime, solution might this link. yes, if remove class relationship, code may work doesn't solve problem. try cleaning , rebuilding project.
Comments
Post a Comment