Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja Beta | Wersja alfa |
---|---|---|---|---|
16 lipca 2025 r. | - | - | - | 1.0.0-alpha10 |
Deklarowanie zależności
Aby dodać zależność od pakietu PDF, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle
aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10" }
Kotlin
dependencies { implementation("androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Brak informacji o wersji tego artefaktu.
Wersja 1.0
Wersja 1.0.0-alpha10
16 lipca 2025 r.
Zostanie wycofaneandroidx.pdf:pdf-*:1.0.0-alpha10
Wersja 1.0.0-alpha10 zawiera te zmiany.
Nowe funkcje
- Ulepszone zaznaczanie, które umożliwia użytkownikom zaznaczanie tekstu na wielu stronach przez przeciąganie uchwytów zaznaczenia poza granice strony.
- Aplikacje mogą teraz przechwytywać i dostosowywać obsługę kliknięć hiperlinków w dokumentach PDF.
Zmiany w interfejsie API
- Udostępnia funkcję kompozycyjną do prezentowania treści w formacie PDF (I8e7ee).
- Przenoszę pliki
PdfPoint
iPdfRect
do pakietuandroidx.pdf.models
(I26cf4) - Udostępnia komponent View do prezentowania treści PDF (I9fe27).
- Udostępnia interfejs API do wcześniejszego inicjowania zasobów PDF i skracania czasu oczekiwania na zimny start (a18fa89).
- Udostępnia interfejs API do zastępowania obsługi kliknięć hiperlinków w treści PDF(6330a8b)
- Udostępnia nowy artefakt pdf-document-service i odpowiednie interfejsy API –
PdfLoader
,PdfDocument
iSandboxedPdfLoader
. Interfejsy mogą służyć do implementowania komponentu analizowania i przetwarzania dokumentu PDF (Ide70d). - Udostępnia interfejs API do ustawiania
PdfDocument
wPdfView
w celu zainicjowania renderowania dokumentu (If8738).
Wersja 1.0.0-alpha09
7 maja 2025 r.
Zostanie wycofaneandroidx.pdf:pdf-*:1.0.0-alpha09
Wersja 1.0.0-alpha09 zawiera te zmiany.
Najważniejsze zmiany
- Kod źródłowy został znacznie zmodyfikowany i jest teraz w całości napisany w języku Kotlin z użyciem procedur współbieżnych i
ViewModel
. Obejmuje to ponowne wdrożeniePdfViewerFragment
. Ta wersja nie zawiera żadnych nowych interfejsów API ani funkcji.
Znane problemy:
- Szybkie przewijanie i wskaźnik strony nie mają efektów cienia.
- Jednostronicowe dokumenty PDF mogą nie zawsze być wyśrodkowane i skalowane do szerokości widoku.
Zmiany w interfejsie API
- Dodaj adnotację
containerStyleResId
do@StyleRes
. (I88d85)
Wersja 1.0.0-alpha08
12 marca 2025 r.
androidx.pdf:pdf-document-service:1.0.0-alpha08
, androidx.pdf:pdf-viewer:1.0.0-alpha08
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08
są zwalniane. Wersja 1.0.0-alpha08 zawiera te zmiany.
Poprawki błędów
- Rozwiązano problem z niejednolitym umiejscowieniem menu wyboru na różnych urządzeniach z Androidem spowodowanym różnicami w skalowaniu. Umiejscowienie menu wyboru jest teraz spójne na wszystkich urządzeniach.
- Dostosowano pozycję szybkiego przewijania i wskaźnika strony podczas ponownego tworzenia fragmentu w sytuacjach takich jak zmiana konfiguracji itp.
Wersja 1.0.0-alpha07
26 lutego 2025 r.
androidx.pdf:pdf-document-service:1.0.0-alpha07
, androidx.pdf:pdf-viewer:1.0.0-alpha07
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07
są zwalniane. Wersja 1.0.0-alpha07 zawiera te zmiany.
Nowe funkcje
- Klasa
PdfViewerFragment
obsługuje terazStylingOptions
(zestaw identyfikatorów zasobów stylu), co umożliwia niestandardowe stylowanie za pomocąnewInstance
lub XML (FragmentContainerView
). Podklasy mogą używać chronionego konstruktora do podobnych funkcji. StylingOptions
obecnie przyjmujecontainerStyle
, które zapewnia:- Obsługa niestandardowych elementów rysowalnych dla uchwytu szybkiego przewijania i wskaźnika strony.
marginEnd
, aby precyzyjnie określić położenie uchwytu szybkiego przewijania i wskaźnika strony.
Zmiany w interfejsie API
- Dodano atrybuty publiczne z
PdfView
(I30fc5) - Dodano nowe interfejsy API
StylingOptions
do wyświetlania plików PDF. (Id2993)
Poprawki błędów
- Rozwiązaliśmy problem z synchronizacją między uchwytem szybkiego przewijania a stanem widoczności wskaźnika strony.
Wersja 1.0.0-alpha06
29 stycznia 2025 r.
androidx.pdf:pdf-document-service:1.0.0-alpha06
, androidx.pdf:pdf-viewer:1.0.0-alpha06
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06
są zwalniane. Wersja 1.0.0-alpha06 zawiera te zmiany.
Poprawki błędów
- Poprawka: awaria spowodowana przez
IllegalArgumentException
podczas odłączania usługi, która nie jest zarejestrowana (eb4e85) - Poprawka: awaria
IllegalArgumentException
z powodu różnicy międzymMaxPages
anumPages
. (75d763)
Wersja 1.0.0-alpha05
11 grudnia 2024 r.
androidx.pdf:pdf-document-service:1.0.0-alpha05
, androidx.pdf:pdf-viewer:1.0.0-alpha05
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05
są zwalniane. Wersja 1.0.0-alpha05 zawiera te commity.
Poprawki błędów
- Ta biblioteka używa teraz adnotacji o wartości null JSpecify, które są używane w typach. Deweloperzy korzystający z języka Kotlin powinni używać tego argumentu kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict
(jest to domyślne ustawienie od wersji 2.1.0 kompilatora Kotlin). (I38301, b/326456246) - Rozwiązaliśmy problem z wyświetlaniem wcześniej otwartej strony po obróceniu urządzenia w Androidzie 13. (Ib03dd)
- Rozwiązaliśmy problem z znikaniem przybornika po obróceniu urządzenia. (01148f)
Wersja 1.0.0-alpha04
13 listopada 2024 r.
androidx.pdf:pdf-viewer:1.0.0-alpha04
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04
zostały opublikowane. Wersja 1.0.0-alpha04 zawiera te zmiany.
Rozszerzona zgodność
- Biblioteka
PDFViewer
obsługuje teraz Androida w wersjach S, T, U i V. Ta większa zgodność jest powiązana z aktualizacją rozszerzenia pakietu SDK 13.
Zmiany w interfejsie API
- Dodano do
PdfViewerFragment
ograniczenie minimalnej kwotySdkExtension
. (I922af) - Udostępnianie nowych interfejsów API w bibliotece przeglądarki plików PDF. (I0af57)
Poprawki błędów
- Poprawka awarii związanej z problemem z zakończeniem procesu.
- Poprawki interfejsu związane z oknem dialogowym hasła.
- Poprawki ułatwień dostępu w przypadku
findInFileView
iFastscrollView
.
Ciągły rozwój
- Pracujemy nad włączeniem Jetpack Compose do biblioteki.
Wersja 1.0.0-alpha03
18 września 2024 r.
androidx.pdf:pdf-viewer:1.0.0-alpha03
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03
zostały opublikowane. Wersja 1.0.0-alpha03 zawiera te commity.
Poprawki błędów
- Rozwiązano problem z niewyświetlaniem się klawiatury przy pierwszym otwarciu wyszukiwarki.
- Poprawki interfejsu związane z czcionką widoku FindInFile.
- Poprawki interfejsu dotyczące zaznaczania tekstu i uchwytu przeciągania.
Znane problemy
- Obrazy 3D w dokumentach PDF nie są renderowane w przeglądarce.
PdfViewerFragment
ma problemy z wydajnością w przypadku bardzo dużych dokumentów PDF (powyżej 250 MB).
Wersja 1.0.0-alpha02
4 września 2024 r.
androidx.pdf:pdf-viewer:1.0.0-alpha02
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02
zostały opublikowane. Wersja 1.0.0-alpha02 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem z rozmyciem obrazu w pliku PDF po obróceniu urządzenia z orientacji pionowej do poziomej i przejściu aplikacji w stan uśpienia.
- Menu „Znajdź w pliku” zachowuje teraz liczbę wyników nawet po zmianie konfiguracji.
- Ikona
FloatingActionButton
jest teraz dostępna w przypadku jednostronicowych plików PDF. - Rozwiązaliśmy problem z nakładaniem się paska Znajdź w pliku i ikony
FloatingActionButton
. - Adnotacje tekstowe i zaznaczenia są teraz renderowane w przeglądarce.
- Wprowadziliśmy ułatwienia dostępu na pasku Znajdź w pliku.
- Wprowadziliśmy poprawki interfejsu związane z obracaniem, w tym zachowywanie liczby wyszukiwań, rozwiązanie problemu z znikającym menu wyboru tekstu i problem z nakładaniem się pływającego przycisku działania.
- Naprawiliśmy problem z menu „Znajdź w pliku”, które było ukryte za klawiaturą w trybie poziomym.
Znane problemy
- Obrazy 3D w dokumentach PDF nie są renderowane w przeglądarce.
PdfViewerFragment
ma problemy z wydajnością w przypadku bardzo dużych dokumentów PDF (powyżej 250 MB).
Wersja 1.0.0-alpha01
7 sierpnia 2024 r.
androidx.pdf:pdf-viewer:1.0.0-alpha01
i androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01
zostały opublikowane. Wersja 1.0.0-alpha01 zawiera te zmiany.
Nowe funkcje
Pierwsza wersja alfa PDFViewer
zawiera implementacje w wersji podglądowej, które umożliwiają podstawowe scenariusze czytania plików PDF. Pamiętaj, że PdfViewerFragment
jest obecnie obsługiwany tylko w wersjach Androida V (SDK 35). Obsługa starszych wersji Androida zostanie dodana w przyszłych wersjach.
- Wprowadzono
PdfViewerFragment
, którego aplikacja może używać do renderowania dokumentu PDF.PdfViewerFragment
ułatwia integrację przeglądarki plików PDF z aktywnością i umożliwia użytkownikom interakcje w następujący sposób:- Powiększanie: ściągnij lub rozsuń palce, aby dostosować poziom powiększenia i wygodnie czytać. Możesz też dwukrotnie kliknąć, aby szybko powiększyć lub pomniejszyć do stanu domyślnego.
- Nawigacja: przewijanie w stanie domyślnym lub powiększonym.
PdfViewerFragment
umożliwia szybkie przewijanie stron. - Działania związane z tekstem: długie naciśnięcie tekstu powoduje jego zaznaczenie, co umożliwia użytkownikom korzystanie z opcji takich jak Kopiuj i Zaznacz wszystko na bieżącej stronie.
- Dokumenty chronione hasłem:
PdfViewerFragment
wyświetla okno dialogowe, w którym użytkownik może wpisać hasło i otworzyć dokument. - Hiperlinki, po których można nawigować: użytkownicy mogą przechodzić do adresów URL lub zakładek, klikając hiperlinki w pliku PDF.
- Skrót do trybu adnotacji: tryb edycji nie jest jeszcze obsługiwany w
PdfViewerFragment
. Zamiast tegoPdfViewerFragment
wyświetlaFloatingActionButton
, które wywołuje niejawny zamiarandroid.intent.action.ANNOTATE
z identyfikatorem URI dokumentu.
Zmiany w interfejsie API
- Dodaliśmy właściwość
PdfViewerFragment.documentUri
, która umożliwia ustawienie identyfikatora URI pliku lub treści dokumentu i rozpoczęcie wczytywania dokumentu.PdfViewerFragment
wyświetla wskaźnik wczytywania, gdy ustawiony jest identyfikator URI, co oznacza przetwarzanie dokumentu w tle. - Dodaliśmy
PdfViewerFragment.isTextSearchActive
, aby przełączać widoczność menu „Znajdź w pliku”.PdfViewerFragment
obsługuje cały proces – umożliwia wprowadzanie danych, wyświetlanie łącznej liczby dopasowań, nawigowanie między wynikami i zamykanie ich. - Dodano wywołania zwrotne
onDocumentLoadSuccess
ionDocumentLoadError
, które są wywoływane po pomyślnym wyrenderowaniu dokumentu lub po wystąpieniu błędu przed renderowaniem.
Znane problemy
- Pasek Znajdź w pliku w niektórych przypadkach nakłada się na ikonę
FloatingActionButton
. - Ikona
FloatingActionButton
nie jest widoczna w przypadku plików PDF składających się z jednej strony. - Liczba wyników nie jest zachowywana po zmianie konfiguracji w menu Znajdź w pliku.
- Podczas zamykania menu „Znajdź w pliku” występuje migotanie
- Obrazy 3D w dokumentach PDF nie są renderowane w przeglądarce.
- Funkcje ułatwień dostępu zostaną włączone w kolejnych wersjach.
- Obraz w pliku PDF rozmywa się po obróceniu z orientacji pionowej do poziomej.
- Brak obsługi adnotacji tekstowych i wyróżnień.
PdfViewerFragment
ma problemy z wydajnością w przypadku bardzo dużych dokumentów PDF (powyżej 250 MB).
Uwagi
- Zaktualizuj
compileSdk
do 35 5dc41be