From 3f0141ad33479972625f6a966a316017e2c3b56a Mon Sep 17 00:00:00 2001 From: Laszlo Modis Date: Thu, 18 Jul 2024 16:52:13 +0300 Subject: [PATCH] Update gradle and libraries --- android-reactive-location/build.gradle | 54 ++++---- .../src/main/AndroidManifest.xml | 2 +- .../ActivityUpdatesObservableOnSubscribe.java | 2 +- build.gradle | 16 +-- gradle.properties | 18 +-- gradle/wrapper/gradle-wrapper.properties | 4 +- maven_push.gradle | 115 ------------------ sample/build.gradle | 21 ++-- sample/src/main/AndroidManifest.xml | 27 ++-- 9 files changed, 72 insertions(+), 187 deletions(-) delete mode 100644 maven_push.gradle diff --git a/android-reactive-location/build.gradle b/android-reactive-location/build.gradle index 9f03d52b..27ab5610 100644 --- a/android-reactive-location/build.gradle +++ b/android-reactive-location/build.gradle @@ -1,41 +1,43 @@ apply plugin: 'com.android.library' -apply plugin: 'maven' +apply plugin: 'maven-publish' android { - compileSdkVersion rootProject.ext.compileSdkVersion + namespace 'pl.charmas.android.reactivelocation2' + compileSdk rootProject.ext.compileSdkVersion defaultConfig { - minSdkVersion 14 + minSdkVersion 21 targetSdkVersion rootProject.ext.targetSdkVersion } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_7 - targetCompatibility JavaVersion.VERSION_1_7 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } -} -//TODO: local maven deployment + publishing { + singleVariant("release") { + withSourcesJar() + withJavadocJar() + } + } +} dependencies { - api 'com.google.android.gms:play-services-location:21.0.1' - api 'com.google.android.gms:play-services-places:17.0.0' - api 'io.reactivex.rxjava2:rxjava:2.2.0' + api 'com.google.android.gms:play-services-location:21.3.0' + api 'com.google.android.gms:play-services-places:17.1.0' + api 'io.reactivex.rxjava2:rxjava:2.2.21' } -// Comment this to deploy to local maven repository -apply from: '../maven_push.gradle' - - -//TODO: clean up -//This is for local maven deployment - -//apply plugin: 'maven' -//uploadArchives { -// repositories { -// mavenDeployer { -// repository url: 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath -// } -// } -//} -//task install(dependsOn: uploadArchives) +afterEvaluate { + publishing { + publications { + register("gpr", MavenPublication) { + from(components["release"]) + groupId = GROUP + artifactId = 'android-reactive-location2' + version = VERSION_NAME + } + } + } +} \ No newline at end of file diff --git a/android-reactive-location/src/main/AndroidManifest.xml b/android-reactive-location/src/main/AndroidManifest.xml index cd701d43..ca4ef6c0 100644 --- a/android-reactive-location/src/main/AndroidManifest.xml +++ b/android-reactive-location/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ - + diff --git a/android-reactive-location/src/main/java/pl/charmas/android/reactivelocation2/observables/activity/ActivityUpdatesObservableOnSubscribe.java b/android-reactive-location/src/main/java/pl/charmas/android/reactivelocation2/observables/activity/ActivityUpdatesObservableOnSubscribe.java index 666fb2c1..66a8b1da 100644 --- a/android-reactive-location/src/main/java/pl/charmas/android/reactivelocation2/observables/activity/ActivityUpdatesObservableOnSubscribe.java +++ b/android-reactive-location/src/main/java/pl/charmas/android/reactivelocation2/observables/activity/ActivityUpdatesObservableOnSubscribe.java @@ -45,7 +45,7 @@ protected void onActivityRecognitionClientReady(ActivityRecognitionClient activi } private PendingIntent getReceiverPendingIntent() { - return PendingIntent.getBroadcast(context, 0, new Intent(ACTION_ACTIVITY_DETECTED), PendingIntent.FLAG_UPDATE_CURRENT); + return PendingIntent.getBroadcast(context, 0, new Intent(ACTION_ACTIVITY_DETECTED), PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT); } @Override diff --git a/build.gradle b/build.gradle index 0d9fdb57..2f2e1fee 100644 --- a/build.gradle +++ b/build.gradle @@ -3,32 +3,24 @@ buildscript { repositories { mavenCentral() - jcenter() google() } + dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:8.5.1' } } // To avoid manually setting the same values in all Android modules, set the value on the root // project and then reference this from the modules ext { - compileSdkVersion = 28 - targetSdkVersion = 28 -} - -def isReleaseBuild() { - return version.contains("SNAPSHOT") == false + compileSdkVersion = 34 + targetSdkVersion = 34 } allprojects { - version = VERSION_NAME - group = GROUP - repositories { mavenCentral() - jcenter() google() maven { url 'https://jitpack.io' } } diff --git a/gradle.properties b/gradle.properties index e90878d6..1c766bcd 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,20 +1,10 @@ -VERSION_NAME=2.1 -VERSION_CODE=102 +VERSION_NAME=3.0 +VERSION_CODE=103 GROUP=pl.charmas.android - -POM_DESCRIPTION=Small library that wraps Google Play Service API in brilliant RxJava Observables reducing boilerplate to minimum. -POM_URL=https://github.com/mcharmas/Android-ReactiveLocation -POM_SCM_URL=https://github.com/mcharmas/Android-ReactiveLocation -POM_SCM_CONNECTION=scm:git@github.com:mcharmas/Android-ReactiveLocation.git -POM_SCM_DEV_CONNECTION=scm:git@github.com:mcharmas/Android-ReactiveLocation.git -POM_LICENCE_NAME=The Apache Software License, Version 2.0 -POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt -POM_LICENCE_DIST=repo -POM_DEVELOPER_ID=mcharmas -POM_DEVELOPER_NAME=Michal Charmas - REACTIVE_LOCATION_GMS_API_KEY= android.useAndroidX=true android.enableJetifier=true +android.nonTransitiveRClass=false +android.nonFinalResIds=false diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4b585d29..e81e8870 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Thu Oct 25 12:29:40 EEST 2018 +#Thu Jul 18 16:33:36 EEST 2024 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip diff --git a/maven_push.gradle b/maven_push.gradle deleted file mode 100644 index 712abf68..00000000 --- a/maven_push.gradle +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright 2013 Chris Banes - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -apply plugin: 'maven' -apply plugin: 'signing' - -def isReleaseBuild() { - return VERSION_NAME.contains("SNAPSHOT") == false -} - -def getReleaseRepositoryUrl() { - return hasProperty('RELEASE_REPOSITORY_URL') ? RELEASE_REPOSITORY_URL - : "https://oss.sonatype.org/service/local/staging/deploy/maven2/" -} - -def getSnapshotRepositoryUrl() { - return hasProperty('SNAPSHOT_REPOSITORY_URL') ? SNAPSHOT_REPOSITORY_URL - : "https://oss.sonatype.org/content/repositories/snapshots/" -} - -def getRepositoryUsername() { - return hasProperty('NEXUS_USERNAME') ? NEXUS_USERNAME : "" -} - -def getRepositoryPassword() { - return hasProperty('NEXUS_PASSWORD') ? NEXUS_PASSWORD : "" -} - -afterEvaluate { project -> - uploadArchives { - repositories { - mavenDeployer { - beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } - - pom.groupId = GROUP - pom.artifactId = POM_ARTIFACT_ID - pom.version = VERSION_NAME - - repository(url: getReleaseRepositoryUrl()) { - authentication(userName: getRepositoryUsername(), password: getRepositoryPassword()) - } - snapshotRepository(url: getSnapshotRepositoryUrl()) { - authentication(userName: getRepositoryUsername(), password: getRepositoryPassword()) - } - - pom.project { - name POM_NAME - packaging POM_PACKAGING - description POM_DESCRIPTION - url POM_URL - - scm { - url POM_SCM_URL - connection POM_SCM_CONNECTION - developerConnection POM_SCM_DEV_CONNECTION - } - - licenses { - license { - name POM_LICENCE_NAME - url POM_LICENCE_URL - distribution POM_LICENCE_DIST - } - } - - developers { - developer { - id POM_DEVELOPER_ID - name POM_DEVELOPER_NAME - } - } - } - } - } - } - - signing { - required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") } - sign configurations.archives - } - - task androidJavadocs(type: Javadoc) { - source = android.sourceSets.main.java.srcDirs - classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) - failOnError = false - } - - task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { - classifier = 'javadoc' - from androidJavadocs.destinationDir - } - - task androidSourcesJar(type: Jar) { - classifier = 'sources' - from android.sourceSets.main.java.sourceFiles - } - - artifacts { - archives androidSourcesJar - archives androidJavadocsJar - } -} diff --git a/sample/build.gradle b/sample/build.gradle index 7f731ed1..5f776908 100755 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -8,34 +8,39 @@ def getGooglePlayServicesApiKey() { } android { - compileSdkVersion rootProject.ext.compileSdkVersion + namespace 'pl.charmas.android.reactivelocation2.sample' + compileSdk rootProject.ext.compileSdkVersion defaultConfig { - minSdkVersion 14 + minSdkVersion 21 targetSdkVersion rootProject.ext.targetSdkVersion + versionName project.VERSION_NAME versionCode Integer.parseInt(project.VERSION_CODE) + resValue "string", "API_KEY", getGooglePlayServicesApiKey() } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_7 - targetCompatibility JavaVersion.VERSION_1_7 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } + buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } } - lintOptions { + + lint { abortOnError false } } dependencies { - implementation 'androidx.appcompat:appcompat:1.0.0' - implementation 'io.reactivex.rxjava2:rxandroid:2.0.2' + implementation 'androidx.appcompat:appcompat:1.7.0' + implementation 'io.reactivex.rxjava2:rxandroid:2.1.1' implementation 'com.github.tbruyelle:rxpermissions:0.10.2' - compile project(':android-reactive-location') + implementation project(':android-reactive-location') } diff --git a/sample/src/main/AndroidManifest.xml b/sample/src/main/AndroidManifest.xml index c7122be9..9e585128 100644 --- a/sample/src/main/AndroidManifest.xml +++ b/sample/src/main/AndroidManifest.xml @@ -1,10 +1,10 @@ + xmlns:tools="http://schemas.android.com/tools"> - @@ -24,6 +24,7 @@ @@ -32,15 +33,25 @@ - + - + - + - + - +