How to Render PDFs on Android in Jetpack Compose (+ Search Function!)

แชร์
ฝัง
  • เผยแพร่เมื่อ 14 พ.ย. 2024

ความคิดเห็น • 42

  • @tch.777
    @tch.777 2 หลายเดือนก่อน +5

    I have no words. You are amazing, ty!🙏

  • @regaclipbeats5947
    @regaclipbeats5947 2 หลายเดือนก่อน +5

    I have been waiting for this video for a long time

  • @amalmanoj5074
    @amalmanoj5074 2 หลายเดือนก่อน +4

    Just a thought - maybe instead of keeping all the bitmaps in memory, you could create them one at a time as they come into view. This could help avoid any potential Out of Memory (OOM) errors with larger PDFs. That's what a lazy column is great for, right?.
    In practice, keeping an array with more than 15 bitmaps (each about 1MB) will almost always cause an OOM exception, even if you only display one at a time using lazy builders like LazyColumn or ViewPager.

    • @PhilippLackner
      @PhilippLackner  2 หลายเดือนก่อน

      @@amalmanoj5074 good point, thanks for adding 👍🏼

  • @DigiWongaDude
    @DigiWongaDude 2 หลายเดือนก่อน +1

    It's nice seeing how well this works! Q: API < 35? A: Use an intent to open a pdf viewer instead?

  • @lindaporsius
    @lindaporsius 2 หลายเดือนก่อน +5

    As always: amazing content Philipp. Your course about coroutines sounds like the thing I need. Will it be a premium course? Does it contain exercises against a real life app like the industry ready test course?

    • @PhilippLackner
      @PhilippLackner  2 หลายเดือนก่อน +1

      @@lindaporsius it will start with teaching the fundamentals and internals of Coroutines and then contain practical examples and use cases of Coroutines and flows afterwards :)
      There will probably also be homework assignments

    • @lindaporsius
      @lindaporsius 2 หลายเดือนก่อน

      Homework sounds great.

  • @kavumaccharles9753
    @kavumaccharles9753 2 หลายเดือนก่อน +2

    Thank you so much @philp this wi what i was waiting for for a very long time. I also appreciate the fact that you always create very good and powerful tutorials, i have taught myself from them many times

    • @programmingconcept9110
      @programmingconcept9110 2 หลายเดือนก่อน

      me too I find his tutorial powerful ones in app development

  • @alexseybobrovitch8964
    @alexseybobrovitch8964 2 หลายเดือนก่อน +1

    Good content! That exact what Im looking for, but I also want to implementation usual text copy feature, can I draw some text layer for that and how?

  • @JazzyJesterTechPing
    @JazzyJesterTechPing 2 หลายเดือนก่อน +2

    Very cool, can you also zoom the pages ?

  • @mrmohammadshah
    @mrmohammadshah 2 หลายเดือนก่อน +2

    Do you create Ebook app using KMM? Please 🙏

  • @stasleonov5196
    @stasleonov5196 หลายเดือนก่อน +1

    Thanks, it is work, but i remove async, couse i have error "java.lang.IllegalStateException: Current page not closed"

  • @levibaraka
    @levibaraka 2 หลายเดือนก่อน +7

    Hearing pdf file so many times has me laughing 😂😂

    • @ben_diesel
      @ben_diesel 2 หลายเดือนก่อน +1

      Portable Data Format - what's funny about PDF file?

    • @afterlyfenio
      @afterlyfenio 2 หลายเดือนก่อน

      ​@@ben_dieselp*do file 😢

    • @verde3584
      @verde3584 2 หลายเดือนก่อน

      It's a meme. Pdf file sounds like pedophile. The meme started because of some mr beast drama​@@ben_diesel

    • @udhdbdjxisskka
      @udhdbdjxisskka 2 หลายเดือนก่อน

      Can't unhear it now. Thx

  • @srabbijan
    @srabbijan 2 หลายเดือนก่อน +2

    it will very much helpful. if you make for a tutorial for
    How to Generate multiple page pdf in Compose

  • @kmbengineer
    @kmbengineer 2 หลายเดือนก่อน +1

    The one question I have is in renders like this in the past I have generally had to release the bitmap on dispose because rapid scrolling of a large document causes crashes. Have you tried this with this style?

  • @Zimallearnings
    @Zimallearnings 2 หลายเดือนก่อน

    Sir please tell me how I can add pdf dependency in koala setup on android studio please tell me

  • @OrlanDroyd
    @OrlanDroyd 2 หลายเดือนก่อน +3

    Great 👍

    • @henrik908
      @henrik908 2 หลายเดือนก่อน

      Are you a catholic or a orthodox?

  • @Dev-tb7mf
    @Dev-tb7mf 2 หลายเดือนก่อน

    Thank for Philipp but I have a problem. Quality of pdf after render is low. How can I make it higher quality

  • @sobhanakr3252
    @sobhanakr3252 หลายเดือนก่อน

    How to convert .pdf file from API to Uri or how to display it using the above approach?

  • @taomiao-l8j
    @taomiao-l8j หลายเดือนก่อน

    i target on 35,and load pdf async, but it only worked on devices using android 15,and crashed on devices below android 15,why no complie errors when i used openPage() in async block?

  • @SamSung-yp7uw
    @SamSung-yp7uw 4 วันที่ผ่านมา

    Hi! This approach is valid for Kotlin/Compose Multiplatform?

  • @RajeshJaswalPune
    @RajeshJaswalPune 2 หลายเดือนก่อน +1

    anyone, link to that lorem ipsum PDF download?

  • @mrmohammadshah
    @mrmohammadshah 2 หลายเดือนก่อน +2

    PDF to ebook app using KMM

    • @mrmohammadshah
      @mrmohammadshah 2 หลายเดือนก่อน

      Do you create Ebook app using KMM? Please

  • @hashemmousavi2451
    @hashemmousavi2451 2 หลายเดือนก่อน

    How pdfRenderer works on Android pre 15?!
    Your minSdk was 24 but no compiler complain!

    • @hashemmousavi2451
      @hashemmousavi2451 2 หลายเดือนก่อน

      I realized PdfRenderer is added on API 21. Just searching functionality is added on Android V.

  • @D-Gowda09
    @D-Gowda09 2 หลายเดือนก่อน

    Thoughts before sleeping:
    If the user didn't allow notifications
    Then how can I run Foreground Services??

  • @silver10188
    @silver10188 2 หลายเดือนก่อน +1

    nice tutorial thank you, I just hope you use conventional language to avoid confusion, you say youri, but it's u r i each letter pronounced separately.

    • @PhilippLackner
      @PhilippLackner  2 หลายเดือนก่อน +3

      Just like some people prefer Sequel over SQL and lol over L-O-L ;)

    • @Kode_Zero
      @Kode_Zero 2 หลายเดือนก่อน

      I don’t think it matters so much. I’m pretty sure everyone can tell what he meant.