Ответ 1
Я думаю, что вы не проходите recipient
как array of string
он должен быть как
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,new String[] { "[email protected]" });
Я пытаюсь использовать intent, чтобы отправить электронное письмо из моего приложения, но поле "Кому" по электронной почте не будет заполнено. Если я добавлю код для заполнения темы или текста, они работают нормально. Просто поле Кому не будет заполнено.
Я также попытался изменить тип на "text/plain" и "text/html", но у меня такая же проблема. Может ли кто-нибудь помочь?
public void Email(){
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setType("message/rfc822"); //set the email recipient
String recipient = getString(R.string.IntegralEmailAddress);
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL , recipient);
//let the user choose what email client to use
startActivity(Intent.createChooser(emailIntent, "Send mail using...")); }
Клиент электронной почты, который я пытаюсь использовать, - это Gmail
Я думаю, что вы не проходите recipient
как array of string
он должен быть как
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,new String[] { "[email protected]" });
Используйте этот
public void Email(){
// use this to declare your 'recipient' string and get your email recipient from your string xml file
Resources res = getResources();
String recipient = getString(R.string.IntegralEmailAddress);
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setType("message/rfc822"); //set the email recipient
emailIntent.putExtra(Intent.EXTRA_EMAIL, recipient);
//let the user choose what email client to use
startActivity(Intent.createChooser(emailIntent, "Send mail using..."));
``}
Это будет работать:)
Это то, что документация по android говорит о Intent.Extra_Email
-Связать массив всех адресов электронной почты получателей.
Таким образом, вы должны правильно кормить строку
Вы можете прочитать больше здесь
http://developer.android.com/guide/components/intents-common.html#Email
и здесь http://developer.android.com/guide/topics/resources/string-resource.html Или используйте действие ACTION_SENDTO и включите схему данных "mailto:". Например:
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:")); // only email apps should handle this
intent.putExtra(Intent.EXTRA_EMAIL, addresses);
intent.putExtra(Intent.EXTRA_SUBJECT, subject);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
private void callSendMeMail() {
Intent Email = new Intent(Intent.ACTION_SEND);
Email.setType("text/email");
Email.putExtra(Intent.EXTRA_EMAIL, new String[] { "[email protected]" });
Email.putExtra(Intent.EXTRA_SUBJECT, "Feedback");
startActivity(Intent.createChooser(Email, "Send mail to Developer:"));
}