110 lines
3.6 KiB
Groovy
110 lines
3.6 KiB
Groovy
plugins {
|
|
id "com.android.application"
|
|
id "kotlin-android"
|
|
id "dev.flutter.flutter-gradle-plugin"
|
|
}
|
|
|
|
def localProperties = new Properties()
|
|
def localPropertiesFile = rootProject.file('local.properties')
|
|
if (localPropertiesFile.exists()) {
|
|
localPropertiesFile.withReader('UTF-8') { reader ->
|
|
localProperties.load(reader)
|
|
}
|
|
}
|
|
|
|
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
|
if (flutterVersionCode == null) {
|
|
flutterVersionCode = '1'
|
|
}
|
|
|
|
def flutterVersionName = localProperties.getProperty('flutter.versionName')
|
|
if (flutterVersionName == null) {
|
|
flutterVersionName = '1.0'
|
|
}
|
|
|
|
android {
|
|
namespace "{{ cookiecutter.org_name_2 }}.{{ cookiecutter.package_name }}"
|
|
compileSdkVersion flutter.compileSdkVersion
|
|
|
|
packagingOptions {
|
|
jniLibs {
|
|
useLegacyPackaging true
|
|
}
|
|
doNotStrip "*/arm64-v8a/libpython*.so"
|
|
doNotStrip "*/armeabi-v7a/libpython*.so"
|
|
doNotStrip "*/x86/libpython*.so"
|
|
doNotStrip "*/x86_64/libpython*.so"
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
coreLibraryDesugaringEnabled true
|
|
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = '1.8'
|
|
}
|
|
|
|
sourceSets {
|
|
main.java.srcDirs += 'src/main/kotlin'
|
|
}
|
|
|
|
{% set min_sdk_version = get_pyproject("tool.flet.android.min_sdk_version") %}
|
|
{% set target_sdk_version = get_pyproject("tool.flet.android.target_sdk_version") %}
|
|
|
|
defaultConfig {
|
|
applicationId "{{ cookiecutter.org_name_2 }}.{{ cookiecutter.package_name }}"
|
|
minSdkVersion {{ min_sdk_version if min_sdk_version else "flutter.minSdkVersion" }}
|
|
targetSdkVersion {{ target_sdk_version if target_sdk_version else "flutter.targetSdkVersion" }}
|
|
versionCode flutterVersionCode.toInteger()
|
|
versionName flutterVersionName
|
|
|
|
println("Gradle build config:")
|
|
println(" minSdkVersion: {{ min_sdk_version if min_sdk_version else "$flutter.minSdkVersion" }}")
|
|
println(" targetSdkVersion: {{ target_sdk_version if target_sdk_version else "$flutter.targetSdkVersion" }}")
|
|
println(" versionCode: $flutter.versionCode")
|
|
println(" versionName: $flutter.versionName")
|
|
|
|
// flet: split_per_abi {% if not cookiecutter.split_per_abi %}
|
|
ndk {
|
|
{% if cookiecutter.options.target_arch %}
|
|
abiFilters {% for arch in cookiecutter.options.target_arch %}'{{ arch }}'{% if not loop.last %}, {% endif %}{% endfor %}
|
|
{% else %}
|
|
abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86_64'
|
|
{% endif %}
|
|
}
|
|
// flet: end of split_per_abi {% endif %}
|
|
}
|
|
|
|
// flet: android_signing {% if cookiecutter.options.android_signing %}
|
|
signingConfigs {
|
|
release {
|
|
keyAlias System.getenv('FLET_ANDROID_SIGNING_KEY_ALIAS')
|
|
keyPassword System.getenv('FLET_ANDROID_SIGNING_KEY_PASSWORD')
|
|
storeFile System.getenv('FLET_ANDROID_SIGNING_KEY_STORE') ? file(System.getenv('FLET_ANDROID_SIGNING_KEY_STORE')) : null
|
|
storePassword System.getenv('FLET_ANDROID_SIGNING_KEY_STORE_PASSWORD')
|
|
}
|
|
}
|
|
// flet: end of android_signing {% endif %}
|
|
|
|
buildTypes {
|
|
release {
|
|
// flet: android_signing {% if cookiecutter.options.android_signing %}
|
|
signingConfig signingConfigs.release
|
|
// {% else %}
|
|
signingConfig signingConfigs.debug
|
|
// flet: end of android_signing {% endif %}
|
|
}
|
|
}
|
|
}
|
|
|
|
flutter {
|
|
source '../..'
|
|
}
|
|
|
|
dependencies {
|
|
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.4'
|
|
}
|