From b7ed86a8ae7e8d10261ef12c1a877e1f35add08a Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 18 Feb 2025 13:44:42 +0530 Subject: [PATCH 1/3] notes: add incrementing versionCode and versionName --- app/.gitignore | 3 ++- app/build.gradle | 65 ++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 65 insertions(+), 3 deletions(-) diff --git a/app/.gitignore b/app/.gitignore index 3548d2f2d..f242ffd76 100644 --- a/app/.gitignore +++ b/app/.gitignore @@ -5,4 +5,5 @@ /fdroid /dev /mdm -/pfungstadt \ No newline at end of file +/pfungstadt +version.properties diff --git a/app/build.gradle b/app/build.gradle index c9d50bafd..43e17524a 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -4,10 +4,71 @@ def buildDate = { -> return new Date().format('yyyyMMddHHmmss') } +def appMajor = 3 +def appMinor = 7 +def appPatch = 2 +def appVersionCode = 3007002 + android { compileSdkVersion 33 buildToolsVersion '31.0.0' + def versionPropsFile = file('version.properties') + Properties versionProps = new Properties() + + if (!versionPropsFile.exists()) { + versionProps['VERSION_CHANGE'] = '0' + versionProps['VERSION_MAJOR'] = appMajor.toString() + versionProps['VERSION_MINOR'] = appMinor.toString() + versionProps['VERSION_PATCH'] = appPatch.toString() + versionProps['VERSION_CODE'] = appVersionCode.toString() + versionProps.store(versionPropsFile.newWriter(), null) + } + + def getVersionCode = { -> + if (versionPropsFile.canRead()) { + versionProps.load(new FileInputStream(versionPropsFile)) + def versionChange = versionProps['VERSION_CHANGE'].toInteger() + 1 + def versionMinor = versionProps['VERSION_MINOR'].toInteger() + def versionMajor = versionProps['VERSION_MAJOR'].toInteger() + def versionPatch = versionProps['VERSION_PATCH'].toInteger() + // Up version on each 100 cycles of builds + if (versionChange >= 100) { + versionPatch = versionProps['VERSION_PATCH'].toInteger() + 1 + versionChange = 0 + } + if (versionPatch == 9) { + versionMinor = versionProps['VERSION_MINOR'].toInteger() + 1 + versionPatch = 0 + } + if (versionMinor == 9) { + versionMajor = versionProps['VERSION_MAJOR'].toInteger() + 1 + versionMinor = 0 + } + def versionCode = versionProps['VERSION_CODE'].toInteger() + + versionProps['VERSION_CHANGE'] = versionChange.toString() + versionProps['VERSION_PATCH'] = versionPatch.toString() + versionProps['VERSION_MINOR'] = versionMinor.toString() + versionProps['VERSION_MAJOR'] = versionMajor.toString() + versionProps['VERSION_CODE'] = (versionCode.toInteger() + 1).toString() + versionProps.store(versionPropsFile.newWriter(), null) + return versionCode + } + } + + def getVersionName = { -> + if (versionPropsFile.canRead()) { + versionProps.load(new FileInputStream(versionPropsFile)) + + def versionMajor = versionProps['VERSION_MAJOR'] + def versionMinor = versionProps['VERSION_MINOR'] + def versionPatch = versionProps['VERSION_PATCH'] + + return "${versionMajor}.${versionMinor}.${versionPatch}" + } + } + compileOptions { coreLibraryDesugaringEnabled true sourceCompatibility JavaVersion.VERSION_11 @@ -18,8 +79,8 @@ android { applicationId "foundation.e.notes" minSdkVersion 24 targetSdkVersion 33 - versionCode 3007002 - versionName "3.7.2" + versionCode getVersionCode() + versionName getVersionName() testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" javaCompileOptions { annotationProcessorOptions { -- GitLab From 1720d391af133848eae8b770de6765ad97d2ba51 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 17 Feb 2025 15:51:43 +0530 Subject: [PATCH 2/3] notes: add kotlin support --- app/build.gradle | 5 +++++ build.gradle | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/app/build.gradle b/app/build.gradle index 43e17524a..7b0c3c4d9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,4 +1,5 @@ apply plugin: 'com.android.application' +apply plugin: 'org.jetbrains.kotlin.android' def buildDate = { -> return new Date().format('yyyyMMddHHmmss') @@ -115,10 +116,14 @@ android { disable 'MissingTranslation' } namespace 'it.niedermann.owncloud.notes' + kotlinOptions { + jvmTarget = '11' + } } dependencies { + implementation 'androidx.core:core-ktx:1.10.1' coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.6' // Nextcloud SSO diff --git a/build.gradle b/build.gradle index 945297bb9..1fab697cc 100644 --- a/build.gradle +++ b/build.gradle @@ -1,12 +1,16 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { + ext { + kotlin_version = '1.9.24' + } repositories { mavenCentral() google() } dependencies { classpath 'com.android.tools.build:gradle:7.3.1' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files -- GitLab From 86b5e6e4e067376d97d86212ba13b290ce0a41a0 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 17 Feb 2025 16:53:13 +0530 Subject: [PATCH 3/3] notes: use aosp platform key --- app/build.gradle | 11 +++++++++++ keystore/platform.jks | Bin 0 -> 3052 bytes 2 files changed, 11 insertions(+) create mode 100644 keystore/platform.jks diff --git a/app/build.gradle b/app/build.gradle index 7b0c3c4d9..84fab080f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -76,6 +76,15 @@ android { targetCompatibility JavaVersion.VERSION_11 } + signingConfigs { + platformConfig { + storeFile file("$rootDir/keystore/platform.jks") + storePassword 'platform' + keyAlias 'platform' + keyPassword 'platform' + } + } + defaultConfig { applicationId "foundation.e.notes" minSdkVersion 24 @@ -97,11 +106,13 @@ android { buildTypes { debug { testCoverageEnabled true + signingConfig signingConfigs.platformConfig } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.platformConfig versionNameSuffix "-${buildDate()}" } } diff --git a/keystore/platform.jks b/keystore/platform.jks new file mode 100644 index 0000000000000000000000000000000000000000..b778840542e79c048bcf570aa960243eeb9b9d53 GIT binary patch literal 3052 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 X4gBin;_WFr#VkVgR?9E{583|$1Z;)? literal 0 HcmV?d00001 -- GitLab