Как читать PDF в Android - PullRequest
       26

Как читать PDF в Android

10 голосов
/ 30 сентября 2010

Я хочу прочитать PDF-файл в Android. Я поместил мои файлы PDF в папку ресурсов.

Как я могу прочитать файл PDF оттуда?

Ссылка для чтения PDF

Я проверил вышеуказанную ссылку, но она не работает для меня. Это дает мне сообщение о том, что активность не найдена.

И я также хочу открыть файл PDF в WebView. Так можно ли читать PDF в WebView?

Ответы [ 5 ]

15 голосов
/ 23 февраля 2011

вы можете скачать PDFbox API для чтения PDF в Android Попробуйте эту ссылку: http://pdfbox.apache.org/

7 голосов
/ 30 сентября 2010

Вам нужно иметь приложение, которое может поддерживать этот mimetype, и открывать его. В вашем устройстве / эмуляторе это приложение не установлено, поэтому оно выдает ошибку

4 голосов
/ 28 января 2011

Еще одно отличное решение для чтения PDF с использованием установленного извне приложения, например Adobe Reader.

private void openPDF(final String pathToPDF) {
    File file = new File(pathToPDF);
    Uri path = Uri.fromFile(file);
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.setDataAndType(path, "application/pdf");
    try {
        startActivity(intent);
    } catch (ActivityNotFoundException e) {
        Toast.makeText(this, "Application not found", Toast.LENGTH_SHORT).show();
    }
}
0 голосов
/ 03 апреля 2019
 private void openPDF(final String path) {
        File file = new File(path);
        Uri uri;
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            uri = FileProvider.getUriForFile(context, context.getPackageName() + ".provider", file);
        } else {
            uri = Uri.fromFile(file);
        }

        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        intent.setDataAndType(path, "application/pdf");
        intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        try {
            startActivity(intent);
        } catch (ActivityNotFoundException e) {
            Toast.makeText(this, "Application not found", Toast.LENGTH_SHORT).show();
        }
    }
0 голосов
/ 05 ноября 2013

Кэшированные Google отображают форматы, такие как pdf, ppt, docx и т. Д. И вам вообще не нужно устанавливать никаких приложений. Найдите ссылку в Google и перейдите в Cached.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...