Effortlessly configure signing for Android builds in Expo projects during the prebuild process.
npm install expo-signedA Plugin for Signing Android Builds on Expo Prebuild
Effortlessly configure signing for Android builds in Expo projects during the prebuild process.
- Step 1: Updates the gradle.properties file to include signing configurations.
- Step 2: Modifies the build.gradle file to switch from debug signing to release signing.
- Step 3: Adds a release signing block to the build.gradle file if it doesn’t already exist.
- Step 4: Copies the keystore file to the android > app directory for signing during the build process.
---
- Expo Local App Production Guide
- Continuous Native Generation in Expo
- React Native Documentation: Generating an Upload Key
---
- Automatic Configuration: Updates android > gradle.properties to include the specified signing properties if they don’t already exist.
- Signing Configuration: Replaces signingConfig signingConfigs.debug with signingConfig signingConfigs.release under android.buildTypes.release in android > app > build.gradle.
- Release Block Addition: Adds the release block with the specified properties to android.signingConfigs in android > app > build.gradle if it doesn’t exist.
- Keystore File Handling: Copies the specified .keystore file (defined by store_file.value) from the keystorePath to the android > app folder.
---
Before using expo-signed, generate a private signing key and follow these steps:
1. Generate a Key:\
Use keytool to create a private signing key. Follow the instructions provided in the React Native documentation on signed APKs.
2. Place the Keystore File:\
Add the generated keystore file to your project directory.
---
To install and configure the plugin:
- Place the .keystore file in your project, and set the folder path (keystorePath) and file name (store_file.value) in the configuration.
Add the plugin configuration to your app.json as follows:
``json`
"plugins": [
...
[
"expo-signed",
{
"store_file": {
"key": "MY_UPLOAD_STORE_FILE",
"value": "my-upload-key.keystore"
},
"key_alias": {
"key": "MY_UPLOAD_KEY_ALIAS",
"value": "my-key-alias"
},
"store_password": {
"key": "MY_UPLOAD_STORE_PASSWORD",
"value": "**"
},
"key_password": {
"key": "MY_UPLOAD_KEY_PASSWORD",
"value": "**"
},
"keystorePath": "./src/assets"
}
],
...
]
---
By following the above steps, you’ll be able to sign your Android builds seamlessly with expo-signed`.