kan*_*nde 4 gradle android-studio android-gradle-plugin
我正在使用 Android Studio IDE,我需要可以选择在代码中分配一个变量,该变量的值将在运行 apk 或生成 apk 时输入。
我知道我无法使用System.console
,还有其他解决方案吗?
可以使用命令行输入或 Android Studio 中的 swing 对话框来完成此操作。如果 gradle 作为守护进程运行,下面的示例任务将显示一个对话框,如果不是,则将显示一个命令行提示符。
import groovy.swing.SwingBuilder
task ask << {
def keyPassPhrase
def console = System.console()
if (console) {
keyPassPhrase = console.readLine('> Please enter key pass phrase: ')
} else {
new SwingBuilder().edt {
dialog(modal: true,
title: 'Enter credentials',
alwaysOnTop: true,
resizable: false,
locationRelativeTo: null,
pack: true,
show: true
) {
vbox {
label(text: "Please enter key passphrase:")
input = passwordField()
button(defaultButton: true, text: 'OK', actionPerformed: {
keyPassPhrase = input.password;
dispose();
})
}
}
}
}
print "Key pass phrase: ${keyPassPhrase}"
}
Run Code Online (Sandbox Code Playgroud)
(感谢 Tim Roes 提供的绝妙解决方案 https://www.timroes.de/2014/01/19/using-password-prompts-with-gradle-build-files/)
归档时间: |
|
查看次数: |
4667 次 |
最近记录: |