Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
16 de julio de 2025 | - | - | - | 1.0.0-alpha10 |
Cómo declarar dependencias
Para agregar una dependencia en PDF, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
dependencies { implementation "androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10" }
Kotlin
dependencies { implementation("androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10") }
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
No hay notas de la versión para este artefacto.
Versión 1.0
Versión 1.0.0-alpha10
16 de julio de 2025
Lanzamiento de androidx.pdf:pdf-*:1.0.0-alpha10
. La versión 1.0.0-alpha10 contiene estas confirmaciones.
Nuevas funciones
- Selección mejorada que permite a los usuarios seleccionar texto en varias páginas arrastrando los controladores de selección más allá de los límites de la página
- Ahora las aplicaciones pueden interceptar y personalizar el control de los clics en hipervínculos dentro de documentos PDF.
Cambios en la API
- Expone un elemento Composable para presentar contenido en PDF (I8e7ee)
- Se transfirieron
PdfPoint
yPdfRect
al paqueteandroidx.pdf.models
(I26cf4). - Expone un componente View para presentar contenido en PDF (I9fe27)
- Se expone la API para inicializar los recursos de PDF con anticipación y reducir la latencia de inicio en frío (a18fa89).
- Se expone la API para anular el control de clics en hipervínculos en contenido de PDF(6330a8b).
- Se expone un nuevo artefacto pdf-document-service y las APIs correspondientes:
PdfLoader
,PdfDocument
ySandboxedPdfLoader
. Las interfaces se pueden usar para implementar el componente de análisis y procesamiento del documento PDF (Ide70d). - Expone una API para establecer
PdfDocument
enPdfView
para inicializar la renderización del documento (If8738).
Versión 1.0.0-alpha09
7 de mayo de 2025
Lanzamiento de androidx.pdf:pdf-*:1.0.0-alpha09
. La versión 1.0.0-alpha09 contiene estas confirmaciones.
Cambios importantes
- La base de código se sometió a una refactorización importante y ahora está escrita completamente en Kotlin, con el uso de corrutinas y
ViewModel
. Esto incluye una reimplementación dePdfViewerFragment
. Esta versión no incluye APIs ni funciones nuevas.
Problemas conocidos:
- El desplazamiento rápido y el indicador de página no tienen efectos de sombra.
- Es posible que los documentos PDF de una sola página no siempre estén centrados y escalados al ancho de la vista.
Cambios en la API
- Anota
containerStyleResId
con@StyleRes
. (I88d85)
Versión 1.0.0-alpha08
12 de marzo de 2025
Lanzamiento de androidx.pdf:pdf-document-service:1.0.0-alpha08
, androidx.pdf:pdf-viewer:1.0.0-alpha08
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08
. La versión 1.0.0-alpha08 contiene estas confirmaciones.
Correcciones de errores
- Se resolvió la ubicación incoherente del menú de selección entre diferentes dispositivos Android debido a las diferencias de escalamiento. La ubicación del menú de selección ahora es coherente en todos los dispositivos.
- Se alinearon la posición del indicador de página y el desplazamiento rápido en la recreación de fragmentos en situaciones como cambios de configuración, etcétera.
Versión 1.0.0-alpha07
26 de febrero de 2025
Lanzamiento de androidx.pdf:pdf-document-service:1.0.0-alpha07
, androidx.pdf:pdf-viewer:1.0.0-alpha07
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07
. La versión 1.0.0-alpha07 contiene estas confirmaciones.
Nuevas funciones
- El
PdfViewerFragment
ahora admiteStylingOptions
(un conjunto de IDs de recursos de diseño) que permite el diseño personalizado a través denewInstance
o XML (FragmentContainerView
). Las subclases pueden utilizar el constructor protegido para una funcionalidad similar. - Actualmente,
StylingOptions
recibecontainerStyle
, que proporciona lo siguiente:- Se admite un elemento de diseño personalizado para el controlador de desplazamiento rápido y el indicador de página.
- Atributo
marginEnd
para el posicionamiento preciso del controlador de desplazamiento rápido y el indicador de página.
Cambios en la API
- Se agregaron atributos públicos de
PdfView
(I30fc5). - Se agregaron nuevas APIs
StylingOptions
para la vista de PDF. (Id2993)
Correcciones de errores
- Se corrigió la discrepancia de sincronización entre el controlador de desplazamiento rápido y el estado de visibilidad del indicador de página.
Versión 1.0.0-alpha06
29 de enero de 2025
Lanzamiento de androidx.pdf:pdf-document-service:1.0.0-alpha06
, androidx.pdf:pdf-viewer:1.0.0-alpha06
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Correcciones de errores
- Corrección: Se corrigió la falla causada por
IllegalArgumentException
cuando se desvincula un servicio que no está registrado (eb4e85). - Se corrigió la falla de
IllegalArgumentException
debido a la diferencia entremMaxPages
ynumPages
. (75d763)
Versión 1.0.0-alpha05
11 de diciembre de 2024
Lanzamiento de androidx.pdf:pdf-document-service:1.0.0-alpha05
, androidx.pdf:pdf-viewer:1.0.0-alpha05
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Correcciones de errores
- Esta biblioteca ahora usa anotaciones de nulabilidad de JSpecify, que son de uso de tipo. Los desarrolladores de Kotlin deberían usar el siguiente argumento del compilador para aplicar el uso correcto:
-Xjspecify-annotations=strict
(este es el valor predeterminado a partir de la versión 2.1.0 del compilador de Kotlin). (I38301, b/326456246) - Se corrigió el problema por el que se mostraba la página abierta anteriormente después de la rotación en Android 13. (Ib03dd)
- Se corrigió la desaparición de la caja de herramientas al rotar el dispositivo. (01148f)
Versión 1.0.0-alpha04
13 de noviembre de 2024
Lanzamiento de androidx.pdf:pdf-viewer:1.0.0-alpha04
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Compatibilidad expandida
- La biblioteca
PDFViewer
ahora admite las versiones S, T, U y V de Android. Esta compatibilidad mejorada está vinculada a la actualización de la extensión del SDK 13.
Cambios en la API
- Se agregó la restricción mínima
SdkExtension
aPdfViewerFragment
. (I922af) - Se exponen nuevas APIs para la biblioteca del Visor de PDF. (I0af57)
Correcciones de errores
- Se corrigió una falla relacionada con el cierre del proceso.
- Se corrigieron problemas de la IU relacionados con el diálogo de contraseñas.
- Se corrigieron problemas de accesibilidad en
findInFileView
yFastscrollView
.
Desarrollo en curso
- Estamos trabajando de forma activa para incorporar Jetpack Compose a la biblioteca.
Versión 1.0.0-alpha03
18 de septiembre de 2024
Lanzamiento de androidx.pdf:pdf-viewer:1.0.0-alpha03
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Correcciones de errores
- Se resolvió el problema por el que no aparecía el teclado cuando se abría la búsqueda por primera vez.
- Se corrigieron errores de la IU relacionados con la fuente de la vista FindInFile.
- Se corrigieron errores de la IU relacionados con la selección de texto y el controlador de arrastre.
Errores conocidos
- Las imágenes en 3D de los documentos PDF no se renderizan en el visor.
PdfViewerFragment
tiene algunos problemas de rendimiento en documentos PDF muy grandes (más de 250 MB).
Versión 1.0.0-alpha02
4 de septiembre de 2024
Lanzamiento de androidx.pdf:pdf-viewer:1.0.0-alpha02
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Correcciones de errores
- Se resolvió el problema de la imagen PDF borrosa cuando se rota de vertical a horizontal y la app entra en suspensión.
- El menú de búsqueda en el archivo ahora mantiene el recuento de resultados incluso cuando cambia la configuración.
- El ícono
FloatingActionButton
ahora está disponible para los PDFs de una sola página. - Se corrigieron los problemas de superposición entre la barra Buscar en el archivo y
FloatingActionButton
. - Ahora se pueden renderizar las anotaciones de texto y de resaltado en el visor.
- Se realizaron mejoras de accesibilidad en la barra Buscar en el archivo.
- Se implementaron correcciones en la IU para la rotación, incluida la conservación del recuento de búsqueda, la solución del problema del menú de selección de texto que desaparece y la resolución del problema de superposición del FAB.
- Se corrigió el problema del menú de búsqueda en el archivo que se oculta detrás del teclado en modo horizontal.
Errores conocidos
- Las imágenes en 3D de los documentos PDF no se renderizan en el visor.
PdfViewerFragment
tiene algunos problemas de rendimiento en documentos PDF muy grandes (más de 250 MB).
Versión 1.0.0-alpha01
7 de agosto de 2024
Lanzamiento de androidx.pdf:pdf-viewer:1.0.0-alpha01
y androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
La versión alfa inicial de PDFViewer
incluye implementaciones preliminares que habilitan situaciones de lectura de PDF básicas. Ten en cuenta que, actualmente, PdfViewerFragment
solo se admite en las versiones de Android V (SDK 35). En próximas versiones, se agregará compatibilidad con versiones anteriores de Android.
- Se introdujo
PdfViewerFragment
, que tu app puede usar para renderizar un documento PDF.PdfViewerFragment
simplifica la integración de un visor de PDF en tu actividad y permite que los usuarios interactúen de las siguientes maneras:- Zoom: Pellizca para acercar y alejar la imagen y ajustar los niveles de zoom para disfrutar de una experiencia de lectura cómoda. También puedes tocar dos veces para acercar o alejar rápidamente la imagen al estado predeterminado.
- Navegación: Desplázate en el estado predeterminado o con zoom.
PdfViewerFragment
proporciona un control deslizante rápido para desplazarse rápidamente entre las páginas. - Acciones de texto: Si mantienes presionado el texto, se selecciona, lo que permite a los usuarios usar opciones como Copiar y Seleccionar todo en la página actual.
- Documentos protegidos con contraseña:
PdfViewerFragment
proporciona un cuadro de diálogo para que el usuario ingrese la contraseña y abra el documento. - Hipervínculos navegables: Los usuarios pueden navegar a URLs web o favoritos presionando los hipervínculos dentro del PDF.
- Atajo al modo de anotaciones: Aún no se admite el modo de edición en
PdfViewerFragment
. En cambio,PdfViewerFragment
muestra unFloatingActionButton
que activa un intentandroid.intent.action.ANNOTATE
implícito con el URI del documento.
Cambios en la API
- Se agregó la propiedad
PdfViewerFragment.documentUri
para establecer un URI de archivo o contenido para el documento y, luego, iniciar la carga del documento.PdfViewerFragment
muestra un ícono giratorio de carga cuando se configura el URI, lo que indica el procesamiento en segundo plano del documento. - Se agregó
PdfViewerFragment.isTextSearchActive
para activar o desactivar la visibilidad del menú de búsqueda en el archivo.PdfViewerFragment
controla todo el flujo, lo que permite ingresar datos, mostrar la cantidad total de coincidencias, habilitar la navegación entre los resultados y salir de ellos. - Se agregaron devoluciones de llamada
onDocumentLoadSuccess
yonDocumentLoadError
que se invocan después de la renderización correcta del documento o después de que se arroja un error antes de la renderización.
Errores conocidos
- En algunos casos, la barra de búsqueda en el archivo se superpone con el
FloatingActionButton
. - El ícono
FloatingActionButton
no se muestra en los PDFs de una sola página. - El recuento de resultados no se conserva en el cambio de configuración del menú de búsqueda en el archivo.
- Se observa parpadeo al cerrar el menú de búsqueda en el archivo
- Las imágenes en 3D de los documentos PDF no se renderizan en el visor.
- Las funciones de accesibilidad se habilitarán en las siguientes versiones.
- La imagen del PDF se desenfoca cuando se rota de vertical a horizontal.
- No se admite la anotación de texto o resaltado.
PdfViewerFragment
tiene algunos problemas de rendimiento en documentos PDF muy grandes (más de 250 MB).
Nota
- Actualiza
compileSdk
a 35 5dc41be