Search code examples
androidgradleproguardandroid-proguard

Release build: transformClassesAndResourcesWithProguardForRelease FAILED


Generate signed APK:

Note: there were 8 unresolved dynamic references to classes or interfaces.
Note: there were 4 accesses to class members by means of introspection.
Warning: there were 5 unresolved references to classes or interfaces.
Warning: there were 1 unresolved references to program class members.

transformClassesAndResourcesWithProguardForRelease FAILED

Full Gradle log is here.

My app build.gradle is here.

UPD. Stacktrace is here.

If I use the -ignorewarnings option, then the app crashes on some versions of the Android.

Presumably after go to Room, I stopped generate signed APK. Also I had to do downgrade com.google.firebase, com.google.android.gms:play-services from 11.0.4 to 11.0.2

Two simple questions (for those who know).

The log says:

Try: Run with --stacktrace option to get the stack trace. 
Run with --info or --debug option to get more log output.

Q1. Where in Android Studio can I specify "--stacktrace", "--info or --debug" options ?

Q2. How (I read the log) I must find out what classes are missing? Where should I look? What to look for?


Solution

  • Q1: In your command line from root of the project: ./gradlew build --stacktrace

    Q2: You should fix this warnings:

    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource: can't find superclass or interface android.arch.util.paging.CountedDataSource
    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource: can't find referenced class android.arch.util.paging.CountedDataSource
    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource: can't find referenced class android.arch.util.paging.CountedDataSource
    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource: can't find referenced class android.arch.util.paging.CountedDataSource
    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource: can't find referenced class android.arch.util.paging.CountedDataSource
    Warning: android.arch.persistence.room.paging.LimitOffsetDataSource$1: can't find referenced method 'void invalidate()' in program class android.arch.persistence.room.paging.LimitOffsetDataSource
    

    And you can try add this to your proguard file:

    -dontwarn android.arch.util.paging.CountedDataSource
    -dontwarn android.arch.persistence.room.paging.LimitOffsetDataSource