我在为RssReader运行我的Android项目时遇到错误.
码:
URL url = new URL(urlToRssFeed);
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
XMLReader xmlreader = parser.getXMLReader();
RssHandler theRSSHandler = new RssHandler();
xmlreader.setContentHandler(theRSSHandler);
InputSource is = new InputSource(url.openStream());
xmlreader.parse(is);
return theRSSHandler.getFeed();
Run Code Online (Sandbox Code Playgroud)
它显示以下错误:
android.os.NetworkOnMainThreadException
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
你如何获得Android的主要电子邮件地址(或电子邮件地址列表)?
我的理解是,在OS 2.0+上支持多个电子邮件地址,但在2.0以下,每个设备只能有一个电子邮件地址.
我创建了一个Android项目,并在我的项目中添加了一个外部JAR(hessian-4.0.1.jar).然后我将JAR添加到构建路径并在Order和Export中将其检出.
看起来忽略了Order和Export,并且运行时缺少外部JAR中的所有类.
在使用Eclipse插件构建Android应用程序时,是否有从外部JAR正确包含所需类的技巧?我不想使用蚂蚁或Maven.
在Android中验证电子邮件地址(例如来自用户输入字段)的好方法是什么?org.apache.commons.validator.routines.EmailValidator似乎不可用.有没有其他图书馆这样做已经包含在Android中,或者我是否必须使用RegExp?
我发现了一种使用意图发送纯文本电子邮件的方法:
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("text/plain");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new
String[]{"example@mail.com"});
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Test");
Run Code Online (Sandbox Code Playgroud)
但我需要发送HTML格式的文本.
尝试setType("text/html")不起作用.
我正在开发我的第一个Android应用程序,并且主要基于研究内置.当我尝试登录我的用户时,我收到android.os.NetworkOnMainThreadException错误.我在网上看过Async应该用来确保不会发生这个错误,但我不知道该怎么做.
以下是我的所有代码.
我的用户登录表单活动:
import java.util.HashMap;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.finecalc.library.DatabaseHandler;
import com.finecalc.library.UserFunctions;
public class UserLogin extends Activity {
Button userlogin;
Button back;
Button login;
EditText inputEmail;
EditText inputPassword;
TextView loginErrorMsg;
// JSON Response node names
private static String KEY_SUCCESS = "success";
private static String KEY_ERROR = "error";
private static String KEY_ERROR_MSG = "error_msg";
private static String KEY_UID = "uid";
private static …Run Code Online (Sandbox Code Playgroud) 以下Java代码用于将文件附加到电子邮件.我想通过电子邮件发送多个文件附件.任何建议,将不胜感激.
public class SendMail {
public SendMail() throws MessagingException {
String host = "smtp.gmail.com";
String Password = "mnmnn";
String from = "xyz@gmail.com";
String toAddress = "abc@gmail.com";
String filename = "C:/Users/hp/Desktop/Write.txt";
// Get system properties
Properties props = System.getProperties();
props.put("mail.smtp.host", host);
props.put("mail.smtps.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
Session session = Session.getInstance(props, null);
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipients(Message.RecipientType.TO, toAddress);
message.setSubject("JavaMail Attachment");
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("Here's the file");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart(); …Run Code Online (Sandbox Code Playgroud) 我想以编程方式发送电子邮件.
我尝试了以下代码.
最终Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
Run Code Online (Sandbox Code Playgroud)emailIntent.setType("plain/text"); emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "abc@gmail.com" }); emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Email Subject"); emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Email Body"); startActivity(Intent.createChooser( emailIntent, "Send mail..."));
但问题是在发送电子邮件之前应用程序打开活动

我想直接发送电子邮件而不需要开放撰写活动.这怎么可能?
我正在构建一个从Android应用程序发送电子邮件的表单,我使用Intents发送电子邮件,即:
Intent sendIntent;
sendIntent = new Intent(Intent.ACTION_SEND);
Run Code Online (Sandbox Code Playgroud)
我的要求是我希望电子邮件立即发送,目前应用程序显示我已安装的电子邮件应用程序在设备中我可以在发送前重新编写电子邮件,我想直接发送邮件而不显示已安装的应用程序.
谢谢
我想通过我的申请发送电子邮件.我需要通过G-Mail发送基于HTML的电子邮件.我找到了以下解决方案,每个解决方案都有利有弊.
1)使用Intent(Intent.ACTION_SEND).这是非常简单的方式,我可以看到我的身体HTML格式,但问题是当我点击"发送电子邮件"按钮,因此很多应用程序,如Facebook和Google+弹出,这是无用的,我不应该在该列表中显示它.这是它的代码:
String html = "<!DOCTYPE html><html><body><a href=\"http://www.w3schools.com\" target=\"_blank\">Visit W3Schools.com!</a>" + "<p>If you set the target attribute to \"_blank\", the link will open in a new browser window/tab.</p></body></html>";
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] {"MY EMAIL ADDRESS"});
intent.putExtra(Intent.EXTRA_SUBJECT, "subject here");
intent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(html));
startActivity(Intent.createChooser(intent, "Send email..."));
Run Code Online (Sandbox Code Playgroud)

2)使用Intent(Intent.ACTION_SENDTO).这样过滤无用的应用程序,并向我显示邮件客户端.但它不会在gmail客户端中以HTML格式显示我的电子邮件.当我发送电子邮件时,一些客户端以HTML格式显示正文,而其他客户端不识别HTML,我的链接表现得像纯文本.这段代码如下:
String html = "<!DOCTYPE html><html><body><a href=\"http://www.w3schools.com\" target=\"_blank\">Visit W3Schools.com!</a>" + "<p>If you set the target attribute to \"_blank\", the link will open in a new browser window/tab.</p></body></html>";
Intent send = new Intent(Intent.ACTION_SENDTO); …Run Code Online (Sandbox Code Playgroud)