Я хочу, чтобы мое приложение открывало pdf - PullRequest
1 голос
/ 29 марта 2012

мое приложение загружает файл PDF из ссылки, сохраняя его на SD-карту, и оно работает нормально ... но я борюсь за то, что я не могу позволить своему приложению просматривать файл PDF .. (хотя я установил просмотрщик PDF на моем эмуляторе) после загрузки файла ничего не происходит ... Вот мой код для открытия файла PDF

                                   InputStream input = new BufferedInputStream(url.openStream());
            File sdCard = Environment.getExternalStorageDirectory();
            File dir = new File(sdCard.getAbsolutePath()
                    + "/myapp/download");
            dir.mkdirs();
            File file = new File(dir, "application/pdf");
            FileOutputStream output = new FileOutputStream(file);

1 Ответ

2 голосов
/ 29 марта 2012

Используйте приведенный ниже код для открытия файла PDF.

File pdfFile = new File("/mnt/sdcard/path_to_file/yourpdf.pdf"); 
    if(pdfFile.exists()) {
        Uri path = Uri.fromFile(pdfFile); 
        Intent pdfIntent = new Intent(Intent.ACTION_VIEW);
        pdfIntent.setDataAndType(path, "application/pdf");
        pdfIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        try {
           startActivity(pdfIntent);
        } catch(ActivityNotFoundException e) {
           Toast.makeText(yourActivityClass.this, "No Application available to view pdf", Toast.LENGTH_LONG).show(); 
        }
    } else {
        Toast.makeText(yourActivityClass.this, "File not found", Toast.LENGTH_LONG).show(); 
    }

yourActivityClass.this - контекст приложения, исправьте его при тестировании над кодом.

...