Getting the Key figured out
The keystore password and the other password are *the same* by default, but you need the right kind of key for it to work:
keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload -storetype JKS
This worked, but the error message has stuck in my mind:
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore /Users/john.maeda/upload-keystore.jks -destkeystore /Users/john.maeda/upload-keystore.jks -deststoretype pkcs12"
Fixing the API level
In your Flutter project open build.gradle file which is located at android/app/build.gradle and change the targetSdkVersion to 30 or higher:
defaultConfig { applicationId "com.example.dev" minSdkVersion 21 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName }
Fixing the com.example issue
In your Flutter project open build.gradle file which is located at android/app/build.gradle and change the targetSdkVersion to 30 or higher:
defaultConfig { applicationId "com.blahblahblahunique.dev" minSdkVersion 21 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName }