Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ClassNotFoundException: com.coremedia.iso.boxes.FileTypeBox in K4LVideoTrimmer

I am trying to integrate Video -Trimming https://github.com/knowledge4life/k4l-video-trimmer and facing following error. I have tried to change proguard as suggested in various post. But could not succeed yet. Please help.Thanks in advance.

02-15 21:59:20.843 5421-5679/? E/AndroidRuntime: FATAL EXCEPTION: pool-8-thread-2
                                             Process: com.abc.main, PID: 5421
                                             java.lang.RuntimeException: java.lang.ClassNotFoundException: com.coremedia.iso.boxes.FileTypeBox
                                                 at com.b.a.g.a(Unknown Source)
                                                 at com.b.a.a.a(Unknown Source)
                                                 at com.d.a.d.r(Unknown Source)
                                                 at com.d.a.d.hasNext(Unknown Source)
                                                 at com.d.a.c.e$1.hasNext(Unknown Source)
                                                 at com.b.a.d.a(Unknown Source)
                                                 at com.d.a.a.b.a.a.a(Unknown Source)
                                                 at life.knowledge4.videotrimmer.b.b.a(Unknown Source)
                                                 at life.knowledge4.videotrimmer.b.b.a(Unknown Source)
                                                 at life.knowledge4.videotrimmer.K4LVideoTrimmer$3.a(Unknown Source)
                                                 at life.knowledge4.videotrimmer.b.a$a.run(Unknown Source)
                                                 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
                                                 at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:154)
                                                 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:269)
                                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
                                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
                                                 at java.lang.Thread.run(Thread.java:818)
                                              Caused by: java.lang.ClassNotFoundException: com.coremedia.iso.boxes.FileTypeBox
                                                 at java.lang.Class.classForName(Native Method)
                                                 at java.lang.Class.forName(Class.java:324)
                                                 at java.lang.Class.forName(Class.java:285)
                                                 at com.b.a.g.a(Unknown Source) 
                                                 at com.b.a.a.a(Unknown Source) 
                                                 at com.d.a.d.r(Unknown Source) 
                                                 at com.d.a.d.hasNext(Unknown Source) 
                                                 at com.d.a.c.e$1.hasNext(Unknown Source) 
                                                 at com.b.a.d.a(Unknown Source) 
                                                 at com.d.a.a.b.a.a.a(Unknown Source) 
                                                 at life.knowledge4.videotrimmer.b.b.a(Unknown Source) 
                                                 at life.knowledge4.videotrimmer.b.b.a(Unknown Source) 
                                                 at life.knowledge4.videotrimmer.K4LVideoTrimmer$3.a(Unknown Source) 
                                                 at life.knowledge4.videotrimmer.b.a$a.run(Unknown Source) 
                                                 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423) 
                                                 at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
                                                 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:154) 
                                                 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:269) 
                                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
                                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
                                                 at java.lang.Thread.run(Thread.java:818) 
like image 376
SimpleCoder Avatar asked Oct 14 '25 12:10

SimpleCoder


1 Answers

This is a known problem with Proguard.

The workaround is to edit your proguard-pro.cfg and add this:

-keep class * implements com.coremedia.iso.boxes.Box {* ; }
-dontwarn com.coremedia.iso.boxes.*
-dontwarn com.googlecode.mp4parser.authoring.tracks.mjpeg.**
-dontwarn com.googlecode.mp4parser.authoring.tracks.ttml.**

Then your signed apk will not crash.

like image 193
spinel Avatar answered Oct 17 '25 05:10

spinel