J'ai écrit du code pour partager le fichier .txt de mon appareil sur WhatsApp. Cependant, le fichier texte est partagé mais au lieu d'afficher le nom du fichier .txt, il affiche sans titre. Voici mon code.J'ai également joint une capture d'écran de l'écran WhatsApp après avoir partagé le fichier.

public static void shareTextToSocialMedia(Context c,String sFilePath)
{
    //share pdf via WhatsApp
    Intent sharingIntent = new Intent(Intent.ACTION_SEND);
    Uri screenshotUri = Uri.parse(sFilePath);

    sharingIntent.setType("text/plain");
    sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
    c.startActivity(Intent.createChooser(sharingIntent, "Share report using"));
}

enter image description here

0
Karthik Pai 28 nov. 2017 à 08:54

3 réponses

Meilleure réponse

Vous essayez ceci, cela vous aidera

Partager un fichier txt depuis votre application

File file = new File(Environment.getExternalStorageDirectory().toString() + "/" +   "abc.txt");
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("text/*");
sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getAbsolutePath()));
startActivity(Intent.createChooser(sharingIntent, "share file with"));

Partager l'image de votre exemple d'application

File f=new File("full image path");
Uri uri = Uri.parse("file://"+f.getAbsolutePath());
Intent share = new Intent(Intent.ACTION_SEND);
share.putExtra(Intent.EXTRA_STREAM, uri);
share.setType("image/*");
share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
context.startActivity(Intent.createChooser(share, "Share image File"));

Partager l'image directement sur WhatsApp depuis votre application

File f=new File("full image path");
Uri uri = Uri.parse("file://"+f.getAbsolutePath());
Intent share = new Intent(Intent.ACTION_SEND);
share.setPackage("com.whatsapp");
share.putExtra(Intent.EXTRA_STREAM, uri);
share.setType("image/*");
share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
context.startActivity(Intent.createChooser(share, "Share image File"));
1
Arjun Othayoth 31 déc. 2018 à 11:17

La meilleure façon de le faire est d'utiliser FileProvider car cela peut conduire à FileUriExposedException

Vous pouvez renvoyer ce post https://stackoverflow.com/a/46761554/2793036

1
Rishabh876 6 juin 2018 à 20:50

Mon problème a été résolu, le code est correct, le chemin est erroné. J'ai ajouté file: // au chemin J'ai défini le chemin du fichier .txt comme ceci, "file: //" + Environment.getExternalStorageDirectory () + File.separator + "Notes" + File.separator + sName + ". txt"; Afficher l'image jointe

1
Karthik Pai 28 nov. 2017 à 10:35
47524832