代码之家  ›  专栏  ›  技术社区  ›  tim4dev

发布生成:TransformClasseSandreSourceWithProguardForRelease失败

  •  1
  • tim4dev  · 技术社区  · 8 年前

    生成签名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 .

    如果我使用-ignorewarnings选项,那么应用程序会在某些版本的Android上崩溃。

    大概在去房间后,我停止了生成签名的APK。 我还不得不降级com.google。firebase,com.google.android。gms:11.0.4到11.0.2的播放服务

    两个简单的问题(对于那些知道的人)。

    日志显示:

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

    问题2.我必须如何(阅读日志)找出缺少哪些类?我应该去哪里看?要寻找什么?

    2 回复  |  直到 8 年前
        1
  •  1
  •   shmakova    8 年前

    问题1:在项目根目录的命令行中: ./gradlew build --stacktrace

    问题2:您应该修复此警告:

    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
    

    -dontwarn android.arch.util.paging.CountedDataSource
    -dontwarn android.arch.persistence.room.paging.LimitOffsetDataSource
    
        2
  •  0
  •   Bruno Pinto    8 年前

    你可以在这里看到缺少哪些类

    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
    

    要处理此类,可以尝试将其添加到 proguard-rules.pro

    -dontwarn android.arch.**
    

    或者,您可以从构建中禁用proguard( here