Android Partage de plusieurs fichiers par intention


Exemple

La liste de chaînes transmise en tant que paramètre à la méthode share() contient les chemins d'accès de tous les fichiers que vous souhaitez partager.

Il parcourt les chemins, les ajoute à Uri et lance l'activité qui peut accepter des fichiers de ce type.

  public static void share(AppCompatActivity context,List<String> paths) {

        if (paths == null || paths.size() == 0) {
            return;
        }
        ArrayList<Uri> uris = new ArrayList<>();
        Intent intent = new Intent();
        intent.setAction(android.content.Intent.ACTION_SEND_MULTIPLE);
        intent.setType("*/*");
        for (String path : paths) {
                File file = new File(path);
                uris.add(Uri.fromFile(file));
        }
        intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
        context.startActivity(intent);
    }