Téléchargez le file excel dans Dropbox ou Google Drive?

Je développe actuellement une application qui crée un file excel (avec apache poi) à partir de la database sqlite dans Android. Tout fonctionne bien, sauf que je ne peux pas envoyer le file à une autre application. J'ai implémenté un programme de files afin que d'autres applications puissent avoir l'autorisation de mon file:

AndroidManifest.xml:

<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.example.ria.masterdetailnoten" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"></meta-data> </provider> 

file_paths.xml:

 <?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/apk/res/android"> <files-path name="backup" path="backup/"/> </paths> 

ExcelFile.java:

 Uri uriFile = FileProvider.getUriForFile(ct, "com.example.ria.masterdetailnoten", backupFile); Intent intent = new Intent(Intent.ACTION_SEND); intent.setDataAndType(uriFile, "application/vnd.ms-excel"); intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); intent.createChooser(intent, "Choose"); ct.startActivity(intent); 

Je sais avec certitude que mon file est en cours de création et je peux le lire à nouveau avec Apache POI. Donc, les seules choses qui ne fonctionnent pas sont l'envoi de l'intention à une autre application.


À titre d'exemple, si je choisis Google Drive dans le choix de l'intention, l'erreur suivante apparaît: "Chargement échouée: la request ne contenait aucune donnée".

Si je l'ouvre avec l'application de boîte aux lettres, l'erreur suivante apparaît: "La boîte aux lettres n'a pas pu lire le file sélectionné"

J'espère que vous pouvez m'aider les gars, j'apprécie votre aide!

Avez-vous essayé d'utiliser: putExtra(Intent.EXTRA_STREAM, uriFile) au lieu de: setData(AndType) ?