Android Studio 4.0.1 тип выпуска / отладки сборки вызывает R8 / Proguard неработоспособные / работоспособные результаты

#android #android-studio #proguard #android-r8

#Android #android-studio #proguard #android-r8

Вопрос:

Обновление: основная причина — это правило в proguard-rules.pro

-предположим, что класс osideeffects com.facebook.stetho.Stetho { *; }


  • Android Studio 4.0.1
  • gradle-6.1.1
  • com.android.tools.build:gradle:4.0.1

Когда я включаю значение minifyEnabled true для типа сборки выпуска приложения (подписано), приложение зависает из-за чего-то неправильного.

Итак, я попытался включить minifyEnabled true для debug buildType (signed) только для целей отладки, приложение работало хорошо.

Опять же, для целей отладки добавьте debuggable true в build.gradle для release buildType, приложение стало работоспособным.

  1. Может ли кто-нибудь помочь с проблемой release buildType?
  2. Если просто добавить debuggable true в release buildType, будет ли это приложение опубликовано в Play Console?
 buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
            zipAlignEnabled true
            //debuggable true
        }

        debug {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.debug
        }
  

Комментарии:

1. Когда minifyEnabled true установлено, вам может потребоваться настроить дополнительные правила сохранения, если ваше приложение (включая библиотеки сторонних производителей, которые вы используете) использует отражение. Пожалуйста, взгляните на developer.android.com/studio/build/shrink-code для некоторой предыстории. Если вы считаете, что настроили необходимые правила сохранения, вы можете открыть проблему в системе отслеживания проблем R8: issuetracker.google.com/issues /.

2. Я указал дополнительные правила сохранения, и это правило работает с Proguad с установкой android.enableR8 = false.

3. Я из команды R8. Жаль слышать, что R8 вызывает проблемы с вашим приложением. Если вы откроете проблему на issuetracker.google.com/issues/… мы можем попытаться помочь выявить проблему.

4. ХОРОШО, issuetracker.google.com/169308888 Спасибо.