Keystore and release signing

The supplied Gradle script reads signing values from android/key.properties and uses a release signing configuration. Create and protect your own upload/signing key before distributing the app.

Create a key

Using the JDK’s keytool, generate a keystore in a secure location. This example prompts for passwords:

keytool -genkeypair -v -keystore flutex-upload.jks -alias upload -keyalg RSA -keysize 2048 -validity 10000

Record the alias and back up the keystore and passwords securely. For an existing published app, use its established signing arrangement; do not replace keys casually.

Configure Gradle

Create android/key.properties with your own values:

storePassword=YOUR_STORE_PASSWORD
keyPassword=YOUR_KEY_PASSWORD
keyAlias=upload
storeFile=C:/secure-location/flutex-upload.jks

Use the real absolute file path for your system. Avoid exposing passwords through screenshots, source control, or support attachments.

Review android/app/build.gradle.kts: the release build should reference the release signing configuration. The inspected file contains a stale comment about debug signing, but its active code selects release.

Build a release and verify it can update your previous test release where applicable. Coordinate the upload certificate with Google Play’s signing setup. Follow the current Flutter signing instructions when configuring a new distribution workflow.

Write Your Comment