createChooser только почтовые клиенты с вложениямиAndroid - PullRequest
0 голосов
/ 29 ноября 2018

Извините за мой английский.Ниже приведен код, который добавляет вложения и текст к сообщению электронной почты:

    // attachments
     ArrayList<Uri> uris = new ArrayList<>();

                for(int i = 0; i < pdfs.length; i++) {
                    File fileIn = new File(pdfs[i].getAbsolutePath());
                    if(!fileIn.getName().endsWith(".txt") && !fileIn.getName().endsWith(".html")) {
                        fileIn.setReadable(true);
                        Uri u = Uri.fromFile(fileIn);
                        uris.add(u);
                    }
                }


//gen mail
    Intent emailIntent = new Intent(ACTION_SEND_MULTIPLE);
    String theme = "BokoPro";
     String to[] = {sendTo};
                emailIntent.putExtra(EXTRA_EMAIL, to);
                emailIntent.putParcelableArrayListExtra(EXTRA_STREAM, uris);
                emailIntent.putExtra(EXTRA_SUBJECT, theme);
                emailIntent.putExtra(EXTRA_TEXT, context.getResources().getString(R.string.text_email_message_body));
     ((Activity) context).startActivity(Intent.createChooser(emailIntent, "Choose an Email client:"));

Все работает нормально, но у меня есть одна проблема, createChooser показать пользователю все приложения (не только клиенты электронной почты, это может быть телеграмма дляпример).Мне нужно показать только все почтовые клиенты в устройстве.Я пытаюсь сделать так:

 Intent emailIntent = new Intent(Intent.ACTION_SENDTO);

это не работает, файлы не прикреплены к письму.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...