O ile wiem, nie ma prosta droga do osiągnięcia tego celu. Zrobiłem prawdziwą aplikację na świecie dla szeroko rozpowszechnionej gazety narodowej: jedyny sposób wydaje się działać z bitmapami. Użyli strony pdf po stronie serwera dla urządzeń iOS i bitmapy jpg dla odpowiednika systemu Android.
Należy pamiętać, że praca z dużymi bitmapami to problem dla Androida. To jest powód, dla którego przeglądarki PDF renderują je w kawałku: jeśli przewiniesz za dużo, w trybie powiększania, porcje o wysokiej rozdzielczości już załadowane do pamięci będą nadal gromadzone i tracone. Przetestuj go za pomocą dowolnej implementacji pdf (nawet muPDF), którą wybierzesz.
Dwie mapy bitowe na raz (na przykład strona przednia i tylna) z rozdzielczością około 1200x800 pochłania całą pamięć sterty aplikacji powodując niesławny wyjątek OutOfMemory. Każde urządzenie ma stałą (i różną) ilość pamięci sterty używanej dla obiektów znajdujących się w pamięci i ma również ograniczone ograniczenia przydziału.
Moja propozycja jest taka:
zaoszczędzić czas i zmienić implementację do prerendered obrazów z pdf (po stronie serwera najlepiej, jeśli to możliwe, lub prerender bezpośrednio na urządzeniu) i zarządzać małą ograniczoną pamięć o tych różnych rozdzielczości.
Jestem programistą dla entuzjastów Androida, ale czekam na kilka części dla wszystkich komponentów w formacie PDF, które mogą zapewnić to, co urządzenia iOS wykonują już bezbłędnie. Powodzenia.
Byłoby pomocne, gdyby można było umieścić linki do bibliotek MuPDF i pageCurl, do których się odwołujesz. – Supreethks
@Supreethks Dzięki za uwagę tutaj jest linia dla MuPDF http://www.mupdf.com/ i dla PageCurl https://github.com/harism/android_page_curl –
@ Ali Imran to rozwiązałeś? – kyogs