0

I have the classes.jar from Unity3d included in my libs folder of Project in Android Studio. If i enable proguard, i could not build it. minifyEnabled true

my build.grade got dependencies

            dependencies {
            compile 'com.google.android.gms:play-services:+'
            compile files('libs/classes.jar')
            }

proguard-rules file has

            -dontwarn org.fmod.**
            -keep  class com.unity3d.** { *; }
            -keep  class org.fmod.** { *; }
            -keepclassmembers   class com.unity3d.player.** { *; }
            -keepclassmembers   class org.fmod.** { *; }
            -libraryjars !libs/classes.jar(!org/fmod/FMODAudioDevice.class)

check the proguard website to have -libraryjars with !. Did not help as well.

Following is the build error.

Error:Execution failed for task ':Android:proguardRelease'.

java.io.IOException: Can't read [/Users/me/after_android_studio/src/libs/classes.jar(;;;;;;!META-INF/MANIFEST.MF)] (Can't process class [org/fmod/FMODAudioDevice.class] (256))

I did my search for similar issue. But i could not read the following URLs.

unresolvedlibraryclassmember

http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass

http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember

FindIt
  • 807
  • 6
  • 14

1 Answers1

0

Check that the jar file is not strange or corrupt in some way. I came across your question while dealing with the same error message, but for a different jar file. I just discovered that the jar I was fighting with contained a directory entry named "VCardProvider.class". Since it was actually a directory, ProGuard failed to read the ".class" file. Perhaps ProGuard shouldn't have failed (it isn't a file, after all), but fixing the jar resolved the issue for me.

dsh
  • 12,037
  • 3
  • 33
  • 51
  • I agree, that work around helps. However i would like to know the commands to configure Proguard rules to ignore such broken class or folder – FindIt Oct 16 '15 at 07:39