Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
16 июля 2025 г. | - | - | - | 1.0.0-альфа10 |
Объявление зависимостей
Чтобы добавить зависимость от PDF, необходимо добавить репозиторий Google Maven в свой проект. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { implementation "androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10" }
Котлин
dependencies { implementation("androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Заметок о выпуске для этого артефакта нет.
Версия 1.0
Версия 1.0.0-альфа10
16 июля 2025 г.
Выпущен androidx.pdf:pdf-*:1.0.0-alpha10
. Версия 1.0.0-alpha10 содержит следующие коммиты .
Новые функции
- Расширенные возможности выделения, позволяющие пользователям выделять текст на нескольких страницах путем перетаскивания маркеров выделения за границы страниц.
- Теперь приложения могут перехватывать и настраивать обработку щелчков по гиперссылкам в документах PDF.
Изменения API
- Предоставляет Composable для представления содержимого PDF ( I8e7ee )
- Перемещение
PdfPoint
иPdfRect
в пакетandroidx.pdf.models
( I26cf4 ) - Предоставляет компонент View для представления содержимого PDF ( I9fe27 )
- Предоставляет API для заблаговременной инициализации ресурсов PDF и снижения задержки холодного запуска ( a18fa89 )
- Предоставляет API для переопределения обработки щелчков по гиперссылкам в содержимом PDF-файла ( 6330a8b )
- Открывает новый артефакт pdf-document-service и соответствующие API —
PdfLoader
,PdfDocument
иSandboxedPdfLoader
. Эти интерфейсы могут быть использованы для реализации компонента анализа и обработки PDF-документа ( Ide70d ). - Предоставляет API для установки
PdfDocument
вPdfView
для инициализации рендеринга документа ( If8738 )
Версия 1.0.0-альфа09
7 мая 2025 г.
Выпущен androidx.pdf:pdf-*:1.0.0-alpha09
. Версия 1.0.0-alpha09 содержит следующие коммиты .
Основные изменения
- Кодовая база подверглась серьёзному рефакторингу и теперь полностью написана на Kotlin с использованием корутин и
ViewModel
. Это включает в себя переработкуPdfViewerFragment
. Этот выпуск не содержит новых API или функций.
Известные проблемы:
- У быстрой прокрутки и индикатора страниц отсутствуют эффекты тени.
- Одностраничные PDF-документы не всегда могут быть отцентрированы и масштабированы по ширине представления.
Изменения API
- Добавьте аннотацию
containerStyleResId
с помощью@StyleRes
. ( I88d85 )
Версия 1.0.0-альфа08
12 марта 2025 г.
Выпущены androidx.pdf:pdf-document-service:1.0.0-alpha08
, androidx.pdf:pdf-viewer:1.0.0-alpha08
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08
. Версия 1.0.0-alpha08 содержит эти коммиты .
Исправления ошибок
- Исправлена проблема несоответствия расположения меню выбора на разных устройствах Android, возникавшая из-за разницы в масштабировании. Теперь расположение меню выбора одинаково на всех устройствах.
- Выровнено положение быстрой прокрутки и индикатора страницы при воссоздании фрагмента в таких сценариях, как изменение конфигурации и т. д.
Версия 1.0.0-альфа07
26 февраля 2025 г.
Выпущены androidx.pdf:pdf-document-service:1.0.0-alpha07
, androidx.pdf:pdf-viewer:1.0.0-alpha07
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07
. Версия 1.0.0-alpha07 содержит эти коммиты .
Новые функции
-
PdfViewerFragment
теперь поддерживаетStylingOptions
(набор идентификаторов ресурсов стилей), что позволяет настраивать стили черезnewInstance
или XML (FragmentContainerView
). Подклассы могут использовать защищённый конструктор для аналогичной функциональности. -
StylingOptions
в настоящее время принимаетcontainerStyle
, который обеспечивает:- Настраиваемая поддержка для быстрой прокрутки и индикатора страниц.
- Атрибут
marginEnd
для точного позиционирования маркера быстрой прокрутки и индикатора страницы.
Изменения API
- Добавлены публичные атрибуты из
PdfView
( I30fc5 ) - Добавлены новые API
StylingOptions
для просмотра PDF-файлов. ( Id2993 )
Исправления ошибок
- Исправлено несоответствие синхронизации между ручкой быстрой прокрутки и состоянием видимости индикатора страницы.
Версия 1.0.0-альфа06
29 января 2025 г.
Выпущены androidx.pdf:pdf-document-service:1.0.0-alpha06
, androidx.pdf:pdf-viewer:1.0.0-alpha06
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06
. Версия 1.0.0-alpha06 содержит эти коммиты .
Исправления ошибок
- Исправление: сбой, вызванный исключением
IllegalArgumentException
при отвязке незарегистрированной службы ( eb4e85 ) - Исправление: сбой
IllegalArgumentException
из-за разницы вmMaxPages
иnumPages
. ( 75d763 )
Версия 1.0.0-альфа05
11 декабря 2024 г.
Выпущены androidx.pdf:pdf-document-service:1.0.0-alpha05
, androidx.pdf:pdf-viewer:1.0.0-alpha05
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05
. Версия 1.0.0-alpha05 содержит эти коммиты .
Исправления ошибок
- Эта библиотека теперь использует аннотации JSpecify, определяющие значение null , которые являются типовыми. Разработчикам Kotlin следует использовать следующий аргумент компилятора для обеспечения корректного использования:
-Xjspecify-annotations=strict
(это значение по умолчанию, начиная с версии 2.1.0 компилятора Kotlin). ( I38301 , b/326456246 ) - Исправлено отображение ранее открытой страницы после поворота в Android 13. ( Ib03dd )
- Исправлено исчезновение панели инструментов при повороте. ( 01148f )
Версия 1.0.0-альфа04
13 ноября 2024 г.
Выпущены androidx.pdf:pdf-viewer:1.0.0-alpha04
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04
. Версия 1.0.0-alpha04 содержит эти коммиты .
Расширенная совместимость
- Библиотека
PDFViewer
теперь поддерживает версии Android S, T, U и V. Эта улучшенная совместимость связана с обновлением расширения SDK 13.
Изменения API
- Добавлено минимальное ограничение
SdkExtension
дляPdfViewerFragment
. ( I922af ) - Представлен новый API для библиотеки PDF Viewer. ( I0af57 )
Исправления ошибок
- Исправление сбоя при проблеме завершения процесса.
- Исправления пользовательского интерфейса, связанные с диалоговым окном ввода пароля.
- Исправления доступности для
findInFileView
иFastscrollView
.
Продолжающееся развитие
- Мы активно работаем над включением Jetpack Compose в библиотеку.
Версия 1.0.0-альфа03
18 сентября 2024 г.
Выпущены androidx.pdf:pdf-viewer:1.0.0-alpha03
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03
. Версия 1.0.0-alpha03 содержит эти коммиты .
Исправления ошибок
- Решена проблема, из-за которой клавиатура не появлялась при первом открытии поиска.
- Исправления пользовательского интерфейса, связанные со шрифтом представления FindInFile.
- Исправления пользовательского интерфейса для выделения текста и перетаскивания маркера.
Известные проблемы
- 3D-изображения в PDF-документах не отображаются в средстве просмотра.
- У
PdfViewerFragment
наблюдаются некоторые проблемы с производительностью при работе с очень большими PDF-документами (> 250 МБ)
Версия 1.0.0-альфа02
4 сентября 2024 г.
Выпущены androidx.pdf:pdf-viewer:1.0.0-alpha02
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит эти коммиты .
Исправления ошибок
- Устранена проблема размытости изображения PDF при повороте из портретного в альбомный режим и переходе приложения в спящий режим.
- Меню «Найти в файле» теперь сохраняет количество результатов даже при изменении конфигурации.
- Значок
FloatingActionButton
теперь доступен для одностраничных PDF-файлов. - Исправлены проблемы с перекрытием между панелью «Найти в файле» и
FloatingActionButton
. - Текстовые и выделенные аннотации теперь можно отображать в средстве просмотра.
- Улучшены возможности доступа к панели «Найти в файлах».
- Внесены исправления в пользовательский интерфейс для ротации, включая сохранение счетчика поиска, решение проблемы исчезающего меню выбора текста и решение проблемы перекрытия FAB.
- Исправлено скрытие меню «Найти в файле» за клавиатурой в ландшафтном режиме.
Известные проблемы
- 3D-изображения в PDF-документах не отображаются в средстве просмотра.
- У
PdfViewerFragment
наблюдаются некоторые проблемы с производительностью при работе с очень большими PDF-документами (> 250 МБ)
Версия 1.0.0-альфа01
7 августа 2024 г.
Выпущены androidx.pdf:pdf-viewer:1.0.0-alpha01
и androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит эти коммиты .
Новые функции
Первая альфа-версия PDFViewer
включает предварительные версии, которые поддерживают основные сценарии чтения PDF-файлов. Обратите внимание, что PdfViewerFragment
в настоящее время поддерживается только в версиях Android V (SDK 35). Поддержка более старых версий Android будет добавлена в следующих версиях.
- Представлен
PdfViewerFragment
, который ваше приложение может использовать для отображения PDF-документа.PdfViewerFragment
упрощает интеграцию средства просмотра PDF-файлов в вашу Activity и позволяет пользователям взаимодействовать следующими способами:- Масштабирование: сведите или разведите пальцы, чтобы отрегулировать уровень масштабирования для комфортного чтения, а двойное нажатие позволяет быстро увеличить/уменьшить масштаб до состояния по умолчанию.
- Навигация: Прокрутка в стандартном/масштабированном состоянии.
PdfViewerFragment
предоставляет быстрый инструмент для быстрой прокрутки между страницами. - Действия с текстом: Длительное нажатие на текст выделяет его, позволяя пользователям использовать такие функции, как «Копировать» и «Выбрать все» на текущей странице.
- Документы, защищенные паролем:
PdfViewerFragment
предоставляет пользователю диалоговое окно для ввода пароля и открытия документа. - Навигационные гиперссылки: пользователи могут переходить к веб-адресам или закладкам, нажимая на гиперссылки в PDF-файле.
- Ярлык для режима аннотаций: Режим редактирования пока не поддерживается в
PdfViewerFragment
. Вместо этогоPdfViewerFragment
отображаетFloatingActionButton
, который запускает неявное намерениеandroid.intent.action.ANNOTATE
с URI документа.
Изменения API
- Добавлено свойство
PdfViewerFragment.documentUri
для установки URI файла или содержимого документа и запуска загрузки документа. При установке URIPdfViewerFragment
отображает индикатор загрузки, указывая на фоновую обработку документа. - Добавлен
PdfViewerFragment.isTextSearchActive
для включения/выключения видимости меню поиска в файле.PdfViewerFragment
управляет всем процессом: позволяет вводить данные, отображает общее количество совпадений, обеспечивает навигацию между результатами и выход из него. - Добавлены обратные вызовы
onDocumentLoadSuccess
иonDocumentLoadError
, которые вызываются после успешного рендеринга документа или после возникновения ошибки перед рендерингом.
Известные проблемы
- В некоторых случаях панель «Найти в файле» перекрывается
FloatingActionButton
. - Значок
FloatingActionButton
не отображается для одностраничных PDF-файлов. - Количество результатов не сохраняется при изменении конфигурации в меню «Найти в файле».
- При закрытии меню «Найти в файле» наблюдается мерцание.
- 3D-изображения в PDF-документах не отображаются в средстве просмотра.
- Функции доступности будут включены в следующих выпусках.
- Изображение PDF становится размытым при повороте из книжной в альбомную ориентацию.
- Нет поддержки текстовых/выделенных аннотаций.
- У
PdfViewerFragment
наблюдаются некоторые проблемы с производительностью при работе с очень большими PDF-документами (> 250 МБ)
Примечание
- Обновление
compileSdk
до версии 35 5dc41be