Установить doNotStrip packageOptions для определенного buildType - PullRequest
0 голосов
/ 24 октября 2018

В моем проекте есть 3 разных типа сборки, и мне нужен только один из них для хранения отладочной информации в его собственных библиотеках.Я использую com.android.tools.build:gradle:3.1.4.

Я попробовал следующее

buildTypes {

   debug {
   ...
   }

   release {
   ...
   }

   unstripped {
       ...
       packagingOptions {
           doNotStrip '**/.*so'
       } 
   }
}

, но это делает все buildTypes для сохранения свободных версий библиотек.

Я также пытался изменитьшаблон doNotStrip для чего-то вроде '**/unstripped/*.so', но это, похоже, не помогает мне, поскольку документы говорят, что путь связан с корневым каталогом APK.

1 Ответ

0 голосов
/ 25 октября 2018

Вот обходной путь для вас:

Подача параметра командной строки "doNotStrip"

  1. Добавьте ниже к вашему app/build.gradle

    android {
        ...
        if (project.hasProperty("doNotStrip")) {
            packagingOptions {
                doNotStrip '**/.*so'
            }
        }
        ...
    }
    
  2. Используйте приведенную ниже команду, чтобы сгенерировать unpripped apk с помощью параметра doNotStrip для команды.

    ./gradlew assembleUnstripped -PdoNotStrip
    
  3. Для других типов сборки вы все равно можете использовать обычные команды сборки.например,

    ./gradlew assembleDebug
    

    или

    ./gradlew assembleRelease
    

    , но не вводите параметр doNotStrip в команду.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...