В командной строке windows переходим в папку явы андроида
cd c:\Program Files\Android\Android Studio\jre\bin\
И запускаем генерацию ключей
keytool -genkey -noprompt -alias ВАШ_АЛИАС -dname CN=ВАШЕ_ИМЯ -keystore ПУТЬ_К_ПАПКЕ_ВПРОЕКТЕ_С_КЛЮЧАМИ -storepass ВАШ_ПАРОЛЬ -keypass ВАШ_ПАРОЛЬ -keyalg RSA -keysize 2048 -validity 10000
пример
keytool -genkeypair -noprompt -alias my_app -dname CN=Bill -keystore D:/android/net.android/myapp/keys/keystore.jks -storepass strongpass -keypass strongpass -keyalg RSA -keysize 2048 -validity 10000
В папке проекта будет сгенерирован ключ подписи проекта
В папке android проекта создаем файл
key.properties
в него пишем и заполняем данными из команды
storePassword=ВАШ_ПАРОЛЬ
keyPassword=ВАШ_ПАРОЛЬ
keyAlias=ВАШ_АЛИАС
storeFile=../../keys/keystore.jks
В папке android\app
В файл build.gradle добавляем
до блока android {
добавляем
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
В блоке android {
добавляем
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}