Добавление полей Cc, Bcc и Subject в сообщение в приложении для Android, отправляющем электронное письмо

#android

#Android

Вопрос:

Я создаю приложение для отправки электронной почты на Android. При запуске приложения нажатием кнопки отображается только поле To.

Почему в нем не отображаются поля Cc, Bcc и Subject? Как добавить эти поля в мое приложение? И как отобразить адрес электронной почты по умолчанию в поле Кому? (Теперь в поле Кому по умолчанию ничего не написано.)

 super.onCreate(savedInstanceState);
setContentView(R.layout.main);
clickBtn = (Button) findViewById(R.id.sendemail);
clickBtn.setText("Send email");
clickBtn.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
        String aEmailList[] = { "user@fakehost.com","user2@fakehost.com" };
        String aEmailCCList[] = { "user3@fakehost.com","user4@fakehost.com"};
        String aEmailBCCList[] = { "user5@fakehost.com" };
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, aEmailList);
        emailIntent.putExtra(android.content.Intent.EXTRA_CC, aEmailCCList);
        emailIntent.putExtra(android.content.Intent.EXTRA_BCC, aEmailBCCList);
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My subject");
        emailIntent.setType("text/plain");
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "My message body.");
        startActivity(emailIntent);
        //startActivity(Intent.createChooser(emailIntent, "Send mail..."));
        finish();
    }
});
  

Комментарии:

1. вы хотите добавить bcc и cc вручную (в динамическом режиме) или с помощью кода …?

2. итак, cc и bcc не отображаются в макете?

3. я очищаю свое приложение и перезапускаю eclipse, затем запускаю новый эмулятор, после чего он работает… спасибо, что уделили мне на это драгоценное время…

4. Какой тип имеет aEmailBCCList?

Ответ №1:

 intent.putExtra(Intent.EXTRA_CC, new String[] { "documents@4taxcash.com" });
  

Вам просто нужно было сделать второй параметр строковым массивом

Ответ №2:

EXTRA_CC устарел, но может ли этот способ решить:

намерение.setData(Uri.parse(«mailto:someone@theirsite.com?cc=someoneelse@theirsite.com «));

Комментарии:

1. Согласно текущим документам, оно не устарело: developer.android.com/reference/android/content /…