Search code examples
javaandroidandroid-studiogradledependencies

Android SDK issue while implementation to other project because of dependency


In SDK we use iso parser library for video compression and few other things. It works fine in a test project, but when I try to use the snapshot version in another project iso parser does not work as it should. That is, while video compression it drops the audio. I don't know why, but when I configure it like this all works fine:

implementation('com.name.lib:Library:1.2.19-SNAPSHOT') {
    exclude group: 'com.googlecode.mp4parser', module: 'isoparser'
}

implementation('com.googlecode.mp4parser:isoparser:1.0.6') {
    force = true
}

I know it's not good practice to use this type of snippet for lib dependenies. Is there any solution to this? If you need more details, please let me know.

Someone below told me to add this in proguard so.

-keep class com.googlecode.mp4parser.isoparser.** { *; }

Solution

  • I solved this issue with not using isoparser library in our SDK.

    For most cases it can solve using keep method in proguard but in my case it didn't help me so i just removed isoparser from my SDK because of that now i don't have any Duplication error in other projects and now it not throw error like noclassfound

    While using dependecny in SDK it headache for SDK user because of this two errors

    • Duplication dependency found duplicate method while compiling that's conflict sdk
    • no class found in some case project it's fails to find some class of dependency that used in my SDK because Android studio not decomile whole SDK

    Conclusion : Try to not use any famous third party library in SDK