Building androidTest apk得到R8错误:“已经有映射”

问题描述 投票:0回答:1

我已将minifyEnabled=true添加到“发布”版本中。该应用程序正常运行。并且androidTest apk正常运行(所有测试均通过)。

如果我将以下any添加到proguard-rules.pro:

-keepattributes LineNumberTable
-keepattributes LocalVariableTable
-keepattributes LocalVariableTypeTable

该应用程序apk将会正确生成,但是在构建androidTest apk时,我得到〜4000 R8“已经有映射”错误:

:app:transformClassesAndResourcesWithR8ForReleaseAndroidTest

(被截断的错误日志是)>

androidTest build error: already has a mapping

似乎出现错误的方法在第三方库中(包括在依赖关系中。)>

提前感谢您的帮助。

我已将minifyEnabled = true添加到“发布”版本中。该应用程序正常运行。并且androidTest apk正常运行(所有测试均通过)。如果我在proguard-rules.pro中添加以下任何内容:-...

android proguard r8
1个回答
0
投票

我通过添加一个额外的buildType来测试'release'配置('releaseTest')解决了这个问题。它继承自“ release”,并设置为debuggable=true

buildTypes {
    debug {
        ...
    }
    release {
        ...
        minifyEnabled true    // enable code shrinking & obfuscation
        shrinkResources true  // enable resource shrinking
        ...
    }
    releaseTest {
        // inherit from 'release' buildType
        initWith release
        // for dependencies that don't know what 'releaseTest' is
        matchingFallbacks = ['release']

        debuggable true
   }
© www.soinside.com 2019 - 2024. All rights reserved.