From 926afc00ae3b3728007cdb1fc716c209cc4aacbd Mon Sep 17 00:00:00 2001 From: Josh Kasten Date: Wed, 30 Oct 2024 17:01:08 -0700 Subject: [PATCH 1/2] Updated to Gradle 8 adn AGP 8 Publishing is untested and may require some changes yet. --- Examples/OneSignalDemo/app/build.gradle | 26 ++++++++++++------- .../app/src/main/AndroidManifest.xml | 3 +-- .../sdktest/application/MainApplication.java | 6 ++--- Examples/OneSignalDemo/build.gradle | 2 +- OneSignalSDK/build.gradle | 2 +- OneSignalSDK/gradle.properties | 4 +-- .../gradle/wrapper/gradle-wrapper.properties | 2 +- OneSignalSDK/onesignal/build.gradle | 4 +-- OneSignalSDK/onesignal/maven-push.gradle | 4 ++- .../impl/NotificationDisplayBuilder.kt | 4 +-- 10 files changed, 31 insertions(+), 26 deletions(-) diff --git a/Examples/OneSignalDemo/app/build.gradle b/Examples/OneSignalDemo/app/build.gradle index b516efdad8..de643d283d 100644 --- a/Examples/OneSignalDemo/app/build.gradle +++ b/Examples/OneSignalDemo/app/build.gradle @@ -3,6 +3,7 @@ plugins { } android { + namespace 'com.onesignal.sdktest' compileSdkVersion 34 defaultConfig { minSdkVersion 21 @@ -52,21 +53,28 @@ android { // Forced downgrade to Java 1.8 for compiling the application due to Android N error when building compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 } packagingOptions { exclude 'androidsupportmultidexversion.txt' } - task flavorSelection() { - if (getGradle().getStartParameter().getTaskRequests().toString().contains("Gms")) { - apply plugin: 'com.google.gms.google-services' - googleServices { disableVersionCheck = true } - } else { - apply plugin: 'com.huawei.agconnect' - } + androidComponents { + onVariants(selector().all(), { variant -> + println("HERE onVariants") + println(variant.name) + switch (variant.name) { + case "gms": + apply plugin: 'com.google.gms.google-services' + googleServices { disableVersionCheck = true } + break + case "huawei": + apply plugin: 'com.huawei.agconnect' + break + } + }) } } diff --git a/Examples/OneSignalDemo/app/src/main/AndroidManifest.xml b/Examples/OneSignalDemo/app/src/main/AndroidManifest.xml index 14d81d3f3d..c35bc26d81 100644 --- a/Examples/OneSignalDemo/app/src/main/AndroidManifest.xml +++ b/Examples/OneSignalDemo/app/src/main/AndroidManifest.xml @@ -1,8 +1,7 @@ + xmlns:amazon="http://schemas.amazon.com/apk/res/android"> diff --git a/Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/application/MainApplication.java b/Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/application/MainApplication.java index 3050d96fc4..ef413c0b76 100644 --- a/Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/application/MainApplication.java +++ b/Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/application/MainApplication.java @@ -20,7 +20,6 @@ import com.onesignal.notifications.IDisplayableNotification; import com.onesignal.notifications.INotificationLifecycleListener; import com.onesignal.notifications.INotificationWillDisplayEvent; -import com.onesignal.sdktest.BuildConfig; import com.onesignal.sdktest.R; import com.onesignal.sdktest.constant.Tag; import com.onesignal.sdktest.constant.Text; @@ -38,9 +37,8 @@ public class MainApplication extends MultiDexApplication { private static final int SLEEP_TIME_TO_MIMIC_ASYNC_OPERATION = 2000; public MainApplication() { - // run strict mode default in debug mode to surface any potential issues easier - if(BuildConfig.DEBUG) - StrictMode.enableDefaults(); + // run strict mode to surface any potential issues easier + StrictMode.enableDefaults(); } @SuppressLint("NewApi") diff --git a/Examples/OneSignalDemo/build.gradle b/Examples/OneSignalDemo/build.gradle index 4ec0efa17f..da2f4ec7bf 100644 --- a/Examples/OneSignalDemo/build.gradle +++ b/Examples/OneSignalDemo/build.gradle @@ -12,7 +12,7 @@ buildscript { maven { url 'https://developer.huawei.com/repo/' } } dependencies { - classpath 'com.android.tools.build:gradle:7.2.2' + classpath 'com.android.tools.build:gradle:8.7.0' classpath 'com.google.gms:google-services:4.3.10' classpath 'com.huawei.agconnect:agcp:1.6.2.300' diff --git a/OneSignalSDK/build.gradle b/OneSignalSDK/build.gradle index 6ce6d76119..34b5c85f4e 100644 --- a/OneSignalSDK/build.gradle +++ b/OneSignalSDK/build.gradle @@ -8,7 +8,7 @@ buildscript { targetSdkVersion: 34, minSdkVersion: 21 ] - androidGradlePluginVersion = '7.2.0' + androidGradlePluginVersion = '8.7.1' googleServicesGradlePluginVersion = '4.3.10' huaweiAgconnectVersion = '1.6.2.300' huaweiHMSPushVersion = '6.3.0.304' diff --git a/OneSignalSDK/gradle.properties b/OneSignalSDK/gradle.properties index 4a6e6ce6c0..b45ca2bbe2 100644 --- a/OneSignalSDK/gradle.properties +++ b/OneSignalSDK/gradle.properties @@ -23,9 +23,7 @@ # Remove when creating an .aar build. #android.enableAapt2=false -android.databinding.incremental = false -kapt.incremental.apt = false -android.testConfig.useRelativePath = false +org.gradle.jvmargs=-Xmx1536m # Enables D8 for all modules. android.enableD8 = true diff --git a/OneSignalSDK/gradle/wrapper/gradle-wrapper.properties b/OneSignalSDK/gradle/wrapper/gradle-wrapper.properties index 669386b870..18330fcba8 100644 --- a/OneSignalSDK/gradle/wrapper/gradle-wrapper.properties +++ b/OneSignalSDK/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/OneSignalSDK/onesignal/build.gradle b/OneSignalSDK/onesignal/build.gradle index 123970d38a..e6451a7c8c 100644 --- a/OneSignalSDK/onesignal/build.gradle +++ b/OneSignalSDK/onesignal/build.gradle @@ -21,8 +21,8 @@ android { } // Forced downgrade to Java 8 so SDK is backwards compatible in consuming projects compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 } namespace 'com.onesignal' } diff --git a/OneSignalSDK/onesignal/maven-push.gradle b/OneSignalSDK/onesignal/maven-push.gradle index ea2e91a46b..ecdc80026e 100644 --- a/OneSignalSDK/onesignal/maven-push.gradle +++ b/OneSignalSDK/onesignal/maven-push.gradle @@ -66,7 +66,9 @@ afterEvaluate { publications { release(MavenPublication) { - from components.release + // components.getByName('release') + // from components.release + // from components.java pom { name = projectName diff --git a/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/display/impl/NotificationDisplayBuilder.kt b/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/display/impl/NotificationDisplayBuilder.kt index 2029c91084..3e0e43e8ed 100644 --- a/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/display/impl/NotificationDisplayBuilder.kt +++ b/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/display/impl/NotificationDisplayBuilder.kt @@ -231,9 +231,9 @@ internal class NotificationDisplayBuilder( if (bitmap == null) return null try { val systemLargeIconHeight = - contextResources!!.getDimension(R.dimen.notification_large_icon_height).toInt() + contextResources!!.getDimension(android.R.dimen.notification_large_icon_height).toInt() val systemLargeIconWidth = - contextResources!!.getDimension(R.dimen.notification_large_icon_width).toInt() + contextResources!!.getDimension(android.R.dimen.notification_large_icon_width).toInt() val bitmapHeight = bitmap.height val bitmapWidth = bitmap.width if (bitmapWidth > systemLargeIconWidth || bitmapHeight > systemLargeIconHeight) { From ab0689acdf9c44b9f1e06ea77a666900dcbf69b5 Mon Sep 17 00:00:00 2001 From: Josh Kasten Date: Mon, 3 Mar 2025 15:53:31 -0500 Subject: [PATCH 2/2] fix publishing fixed .aar files not being published from Gradle upgrade --- OneSignalSDK/onesignal/build.gradle | 2 ++ OneSignalSDK/onesignal/maven-push.gradle | 7 +++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/OneSignalSDK/onesignal/build.gradle b/OneSignalSDK/onesignal/build.gradle index e6451a7c8c..b30da15674 100644 --- a/OneSignalSDK/onesignal/build.gradle +++ b/OneSignalSDK/onesignal/build.gradle @@ -1,5 +1,6 @@ plugins { id 'com.android.library' + id 'kotlin-android' } android { @@ -25,6 +26,7 @@ android { targetCompatibility JavaVersion.VERSION_11 } namespace 'com.onesignal' + kotlinOptions.freeCompilerArgs += ['-module-name', namespace] } ext { diff --git a/OneSignalSDK/onesignal/maven-push.gradle b/OneSignalSDK/onesignal/maven-push.gradle index ecdc80026e..4289d7d2c4 100644 --- a/OneSignalSDK/onesignal/maven-push.gradle +++ b/OneSignalSDK/onesignal/maven-push.gradle @@ -66,10 +66,6 @@ afterEvaluate { publications { release(MavenPublication) { - // components.getByName('release') - // from components.release - // from components.java - pom { name = projectName description = projectDescription @@ -97,6 +93,9 @@ afterEvaluate { } } } + afterEvaluate { + from components.findByName('release') + } } } }