Я хочу отображать содержимое PDF в веб-просмотре. Вот мой код:
WebView webview = new WebView(this);
setContentView(webview);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://www.adobe.com/devnet/acrobat/pdfs/pdf_open_parameters.pdf");
У меня пустой экран. Я также установил разрешение на доступ в Интернет.
You've reached the bandwidth limit for viewing or downloading files that aren't in Google Docs format....
. Так что не кажется надежным.Если вы используете URL-адрес только для просмотра, пользователю не предлагается войти в свою учетную запись Google.
источник
Открытие PDF-файла с помощью Google docs - плохая идея с точки зрения взаимодействия с пользователем. Это действительно медленно и не отвечает.
Решение после API 21
Начиная с api 21, у нас есть PdfRenderer, который помогает конвертировать PDF в Bitmap. Я никогда не использовал его, но кажется достаточно простым.
Решение для любого уровня API
Другое решение - загрузить PDF-файл и передать его через Intent в специальное приложение для PDF-файлов, которое будет отображать его. Быстрый и приятный пользовательский интерфейс, особенно если эта функция не является центральной в вашем приложении.
Используйте этот код, чтобы загрузить и открыть PDF
}
Чтобы намерение работало, вам необходимо создать FileProvider, чтобы предоставить принимающему приложению разрешение на открытие файла.
Вот как вы это реализуете: В своем манифесте:
Наконец, создайте файл file_paths.xml в сборщике ресурсов
Надеюсь, это поможет =)
источник
Используйте этот код:
источник
Здесь загрузите с помощью progressDialog. Необходимо предоставить WebClient, иначе он принудительно откроется в браузере:
источник
Вы можете использовать Mozilla pdf.js проект. В основном он покажет вам PDF-файл. Взгляните на их пример .
Я использую его только в браузере (настольном и мобильном), и он работает нормально.
источник
На самом деле все решения были довольно сложными, и я нашел действительно простое решение (я не уверен, что оно доступно для всех версий sdk). Он откроет PDF-документ в окне предварительного просмотра, где пользователь сможет просмотреть и сохранить / поделиться документом:
(Котлин)
источник
Загрузите исходный код отсюда ( открыть pdf в браузере android )
activity_main.xml
MainActivity.java
источник
Это фактический предел использования, который разрешает Google, прежде чем вы получите ошибку, упомянутую в комментариях , если это один раз в жизни PDF-файл, который пользователь откроет в приложении, тогда я считаю его полностью безопасным. Хотя рекомендуется использовать собственный подход с использованием встроенной платформы Android из Android 5.0 / Lollipop, он называется PDFRenderer .
источник
источник