Bonjour,
J'ai mis un fichier PDF à l'intérieur de mon application res/raw/my_pdf.pdf pour éviter d'être copié et j'aimerais l'ouvrir avec une application externe dans ma tablette.
Voici ce que j'ai essayé:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| public void loadDocInReader(View v) throws ActivityNotFoundException, Exception {
try {
Intent intent = new Intent();
intent.setPackage("com.foobnix.pro.pdf.reader");
intent.setDataAndType(Uri.parse("raw/my_pdf.pdf"), "application/pdf");
startActivity(intent);
} catch (ActivityNotFoundException activityNotFoundException) {
activityNotFoundException.printStackTrace();
throw activityNotFoundException;
} catch (Exception otherException) {
otherException.printStackTrace();
throw otherException;
}
} |
Cette méthode lance l'application externe que je veux, mais avec aucun fichier PDF, juste une page blanche.
Je sais aussi qu'il est possible d'obtenir comme InputStream:
InputStream raw = getResources().openRawResource(R.raw.my_pdf)
mais comment l'ouvrir avec mon application spécifique ?
La première méthode fonctionne parfaitement pour un fichier dans la sdcard mais vu que je veux interdire que le fichier soit copié, je l'ai mis dans à l'intérieur de l'application.
Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?
Merci d'avance
Partager