Создайте без подписки APK с помощью Gradle

В настоящее время я пытаюсь изучить Gradle для сборки Android APK. Как установить опцию в Gradle для сборки без знака APK?

Ответ 1

Вам не нужно устанавливать какой-либо параметр, просто выполните обычную задачу:

$ gradle assemble

Это создаст два файла в проекте /build/apk/

app-debug-unaligned.apk 
app-release-unsigned.apk

Ответ 2

Чтобы сгенерировать unsigned apk, выполните следующие действия:

  • определите a signingConfig с пустыми конфигурациями, такими как:

    signingConfigs{
        unsigned{
            storePassword = ""
            keyAlias = ""
            keyPassword = ""
        }
    }
    
  • определите в buildTypes для вашей версии выпуска с неподписанной конфигурацией:

    buildTypes{
        release{
            signingConfig signingConfigs.unsigned
        }
    }
    

Я получаю это от группы adt-dev, где Xavier Ducrohet пишет:

Текущее поведение заключается в том, чтобы проверить, что конфиг подписания полностью (*), и если это так, он генерирует подписанный APK, иначе unsigned APK.

(*) полностью настроена прямо сейчас, означает значение для хранятся, псевдонимы и пароли, но не включают, что keystore присутствует.

ОБНОВЛЕНИЕ 2013-12-19

Как упоминалось выше, это не работает с плагином gradle версии 0.6.3.

В любом случае возможно сгенерировать unsigned APK с gradle: просто дайте записи signedConfig атрибута или buildType пустым. Он должен выглядеть следующим образом:

productFlavors{
    // with this config you should get a "MyProject-flavorUnsigned-release-unsigned.apk"
    flavorUnsigned{
        versionCode = 9
        packageName defaultPkgName
    }
}

buildTypes{
    // with this config you should get a "MyProject-release-unsigned.apk"
    release{
        packageNameSuffix '.release'
    }
}

Ответ 3

просто назначьте значение null для signedConfig

android {
  buildTypes {
    debug {
      signingConfig null
    }
  }
}