Java 如何在eclipse中配置android应用程序属性,以便我可以自动发送电子邮件?
我想在eclipse中以用户身份自动从我的应用程序发送电子邮件。我尝试了在Internet上找到的所有可能的建议,添加了jar文件,如javax.mail.jar、activation.jar和additional.jar,并尝试了所有可能的添加方法,但总是产生错误。 我努力工作,但没有结果,我真的累了。 我在java项目中尝试了代码,它工作正常并成功地发送了电子邮件,但在android项目中没有,下面是代码片段:Java 如何在eclipse中配置android应用程序属性,以便我可以自动发送电子邮件?,java,android,eclipse,email,Java,Android,Eclipse,Email,我想在eclipse中以用户身份自动从我的应用程序发送电子邮件。我尝试了在Internet上找到的所有可能的建议,添加了jar文件,如javax.mail.jar、activation.jar和additional.jar,并尝试了所有可能的添加方法,但总是产生错误。 我努力工作,但没有结果,我真的累了。 我在java项目中尝试了代码,它工作正常并成功地发送了电子邮件,但在android项目中没有,下面是代码片段: `Properties props = new Properties();
`Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
session = Session.getDefaultInstance(props,
new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username,password);
}
});
test.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("dev.montaser@gmail.com"));
message.setRecipients(MimeMessage.RecipientType.TO,
InternetAddress.parse("eng.montaser99@yahoo.com"));
message.setSubject("Test JCG Example");
message.setContent("Hello how are you","text/html; charset=utf-8");
Transport.send(message);
System.out.println("Mail sent succesfully!");
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
});
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
这是错误日志。
03-29 15:16:00.240:E/AndroidRuntime1249:致命异常:主
03-29 15:16:00.240:E/AndroidRuntime1249:java.lang.NoClassDefFoundError:com.example.finalp.main活动$1
03-29 15:16:00.240:E/AndroidRuntime1249:at com.example.finalp.MainActivity.onCreateMainActivity.java:40
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.Activity.performCreateActivity.java:5133
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.Instrumentation.callActivityOnCreateInstrumentation.java:1087
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.ActivityThread.performLaunchActivityActivityThread.java:2175
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.ActivityThread.handleLaunchActivityActivityThread.java:2261
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.ActivityThread.access$600ActivityThread.java:141
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.ActivityThread$H.handleMessageActivityThread.java:1256
03-29 15:16:00.240:E/AndroidRuntime1249:at android.os.Handler.dispatchMessageHandler.java:99
03-29 15:16:00.240:E/AndroidRuntime1249:at android.os.Looper.Looper.java:137
03-29 15:16:00.240:E/AndroidRuntime1249:at android.app.ActivityThread.mainActivityThread.java:5103
03-29 15:16:00.240:E/AndroidRuntime1249:at java.lang.reflect.Method.Invokenactive方法
03-29 15:16:00.240:E/AndroidRuntime1249:at java.lang.reflect.Method.invokeMethod.java:525
03-29 15:16:00.240:E/AndroidRuntime1249:com.android.internal.os.ZygoteInit$methodAndArgscaler.runZygoteInit.java:737
`我想告诉你,我在Linux操作系统上工作,我认为最简单的方法是在邮件提供商那里获得一个免费帐户,然后用它来发送邮件。有几种方法可以让你通过HTTP调用发送邮件,这样你就不必处理javamail,我不确定Android是否支持javamail。