У меня проблемы с градулой proguard... У меня есть следующие модули:
- Приложение: основной модуль приложения. Имеют зависимость ModuleA и ModuleC
- ModuleA: библиотечный модуль. Имеют зависимость ModuleB и jar dependecies.
- МодульB: модуль библиотеки
- Модуль Module: библиотечный модуль
- Износ: носить модуль приложения.
build.gradle файлы: - Приложение:
buildTypes {
       release {
           minifyEnabled true
           proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
       }
 }
dependencies {
   compile fileTree(dir: 'libs', include: ['*.jar'])
   compile project(':ModuleA')
   compile project(':ModuleC')
   wearApp project(':Wear')
}
ModuleA:
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'])
  compile project(':ModuleB')
}
ModuleB:
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
ModuleC: То же, что и ModuleB.
Wear:
buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
** Я написал только важные строки
Моя проблема заключается в том, что если я создаю подписанный APK с этой конфигурацией, когда я устанавливаю его на устройство, он вылетает с этим исключением:
java.lang.NoSuchFieldError: нет поля с именем = 'peer' signature = 'J' в классе Lcom/package/ClassInJar;
Он сбой в классе, содержащемся в банке в папке libs модуля A.
Если я устанавливаю minifyEnabled на false во всех модулях, он не сбой, но я предпочитаю обфускацию кода. И если я превращу minifyEnabled в true в библиотечных модулях, он не компилируется и покажет мне это исключение:
Error:Execution failed for task ':ModuleB:proguardRelease'.
java.io.IOException: выходной бачок пуст. Вы указали правильные опции -keep?

