feat(build): enhance Gradle configuration with keystore properties and release signing setup
This commit is contained in:
parent
e5b3616245
commit
f4b905cd42
@ -5,40 +5,73 @@ plugins {
|
|||||||
id "dev.flutter.flutter-gradle-plugin"
|
id "dev.flutter.flutter-gradle-plugin"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Load keystore properties from key.properties file
|
||||||
|
def keystoreProperties = new Properties()
|
||||||
|
def keystorePropertiesFile = rootProject.file('key.properties')
|
||||||
|
if (keystorePropertiesFile.exists()) {
|
||||||
|
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
||||||
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.example.marco"
|
// Define the namespace for your Android application
|
||||||
|
namespace = "com.marco.aiot"
|
||||||
|
// Set the compile SDK version based on Flutter's configuration
|
||||||
compileSdk = flutter.compileSdkVersion
|
compileSdk = flutter.compileSdkVersion
|
||||||
|
// Set the NDK version based on Flutter's configuration
|
||||||
ndkVersion = flutter.ndkVersion
|
ndkVersion = flutter.ndkVersion
|
||||||
|
|
||||||
|
// Configure Java compatibility options
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
targetCompatibility = JavaVersion.VERSION_1_8
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Configure Kotlin options for JVM target
|
||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
jvmTarget = JavaVersion.VERSION_1_8
|
jvmTarget = JavaVersion.VERSION_1_8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Default configuration for your application
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
// Specify your unique Application ID. This identifies your app on Google Play.
|
||||||
applicationId = "com.example.marcostage"
|
applicationId = "com.marco.aiotstage"
|
||||||
// You can update the following values to match your application needs.
|
// Set minimum and target SDK versions based on Flutter's configuration
|
||||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
|
||||||
minSdk = flutter.minSdkVersion
|
minSdk = flutter.minSdkVersion
|
||||||
targetSdk = flutter.targetSdkVersion
|
targetSdk = flutter.targetSdkVersion
|
||||||
|
// Set version code and name based on Flutter's configuration (from pubspec.yaml)
|
||||||
versionCode = flutter.versionCode
|
versionCode = flutter.versionCode
|
||||||
versionName = flutter.versionName
|
versionName = flutter.versionName
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Define signing configurations for different build types
|
||||||
|
signingConfigs {
|
||||||
|
release {
|
||||||
|
// Reference the key alias from key.properties
|
||||||
|
keyAlias keystoreProperties['keyAlias']
|
||||||
|
// Reference the key password from key.properties
|
||||||
|
keyPassword keystoreProperties['keyPassword']
|
||||||
|
// Reference the keystore file path from key.properties
|
||||||
|
storeFile file(keystoreProperties['storeFile'])
|
||||||
|
// Reference the keystore password from key.properties
|
||||||
|
storePassword keystoreProperties['storePassword']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Define different build types (e.g., debug, release)
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
// TODO: Add your own signing config for the release build.
|
// Apply the 'release' signing configuration defined above to the release build
|
||||||
// Signing with the debug keys for now, so `flutter run --release` works.
|
signingConfig signingConfigs.release
|
||||||
signingConfig = signingConfigs.debug
|
// Enable code minification to reduce app size
|
||||||
|
minifyEnabled true
|
||||||
|
// Enable resource shrinking to remove unused resources
|
||||||
|
shrinkResources true
|
||||||
|
// Other release specific configurations can be added here, e.g., ProGuard rules
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Configure Flutter specific settings, pointing to the root of your Flutter project
|
||||||
flutter {
|
flutter {
|
||||||
source = "../.."
|
source = "../.."
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user