Skip to content

Release/4.4.0 - #124

Merged
da2gl merged 6 commits into
masterfrom
release/4.4.0
Sep 24, 2026
Merged

da2gl merged 6 commits into
masterfrom
release/4.4.0

Conversation

@Khrolovich

Copy link
Copy Markdown
Contributor

No description provided.

Khrolovich and others added 6 commits September 22, 2026 15:32
Dependency versions come from the com.appodeal.ads:sdk:4.4.0.0 POM, except
the Bidon Start.io adapter, which stays at 5.2.4.1 as recommended for 4.4.0
(5.3.2 pulls kotlin-stdlib 2.4.0 and minCompileSdk 37).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The demo tracks the dependency set MDS recommends for a core version,
which is what the docs, the Unity plugin and publishers get, not the
aggregate com.appodeal.ads:sdk POM. The recommended set for 4.4.0 keeps
the 4.3.0 network versions and bumps only applovin_max 13.6.3.1,
org.bidon:bidmachine-adapter 3.7.1.1, org.bidon:zmaticoo-adapter 2.0.7.1.0
and the LevelPlay Mintegral adapter 5.18.0 next to core 4.4.0.

compileSdk 37 and the Kotlin Gradle plugin 2.3.0 stay as they are: core
4.4.0 ships Kotlin 2.3 metadata, so 2.1.0 no longer compiles ("Module was
compiled with an incompatible version of Kotlin ... expected version is
2.1.0"). com.applovin.mediation:mytarget-adapter has no MDS recommendation
and keeps 5.47.1.0.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- AGP 8.13.1 -> 9.4.1, Gradle 8.13 -> 9.7.1 (AGP 9.4 requires Gradle >= 9.6)
- Use AGP built-in Kotlin: drop kotlin-gradle-plugin classpath and the
  org.jetbrains.kotlin.android plugin from all modules; remove kotlinOptions
  (jvmTarget now follows compileOptions.targetCompatibility)
- minSdkVersion/targetSdkVersion -> minSdk/targetSdk (old DSL removed in AGP 9)
- rootProject.buildDir -> layout.buildDirectory (removed in Gradle 9)
- org.gradle.unsafe.configuration-cache -> org.gradle.configuration-cache

Known issues on this toolchain with minifyEnabled=true (not enabled in the
demo): R8 strips WorkDatabase_Impl.<init>() (WorkManager 2.8.1 transitive)
and the iab adapter fails to load banner/rewarded; see
report/sdk-4.4.0-agp-check-2026-09-23.md.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Groovy DSL: use `prop = value` assignment for android {} properties and
  the maven url (removed in Gradle 10)
- Drop android.nonFinalResIds=false (removed in AGP 10, default true) and
  android.nonTransitiveRClass=false; sources only reference own-module R.id
- targetSdk 35 -> 37 to match compileSdk (Play requires >= 36 since
  2026-08-31)

Verified: `./gradlew --warning-mode all assembleDebug assembleRelease` reports
no deprecations; interstitial/banner/rewarded debug smoke on API 36 emulator
OK. Remaining manifest-merger notes come from library manifests (AppsFlyer
tools:replace allowBackup, Vungle tools:node=replace WRITE_EXTERNAL_STORAGE).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Turn the demo into a reproducible R8 check environment for AGP 9.4.1 /
R8 9.4.24 full mode:

- release: minifyEnabled = true, shrinkResources = true; signed with the
  debug key (demo only) so the minified APK can be installed and checked
  on a device
- gradle.properties: -Xmx10g (R8 needs ~4 GB per module, OOMs at 4 GB)
  and android.r8.maxWorkers=1 so all six modules can be minified in one
  build on a 24 GB machine (~17 min for assembleRelease)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Adds consumer keep rules that stop R8 >= 9.2 from miscompiling the
interface-typed self-reference fields in the mraid/vast unified ads
(createListener() became "throw null" -> banner/rewarded never loaded under
AGP 9 full mode). Verified: banner, rewarded and interstitial minified
release load/show/close on the API 37 emulator; three R8 runs of banner
produce identical mappings.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings September 24, 2026 09:12
@da2gl
da2gl merged commit f68f27f into master Sep 24, 2026
2 checks passed
@da2gl
da2gl deleted the release/4.4.0 branch September 24, 2026 09:13

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Critical JVM-target mismatches in six modules may cause Gradle build failures.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 6 High severity

Open (6)
What changed in this PR

Updates the demo applications to Appodeal SDK 4.4.0 and modernizes the Android/Gradle toolchain.

Changes:

  • Upgrades SDK, adapters, AGP, Gradle, and Android SDK versions.
  • Enables minification and resource shrinking for release builds.
  • Updates Gradle settings and the README SDK version.
File Summary
rewarded/​build.gradle Updates SDK, toolchain, and release settings.
README.md Updates the documented SDK version.
native/​build.gradle Updates SDK, toolchain, and release settings.
mrec/​build.gradle Updates SDK, toolchain, and release settings.
interstitial/​build.gradle Updates SDK, toolchain, and release settings.
gradle/​wrapper/​gradle-wrapper.properties Upgrades the Gradle wrapper.
gradle.properties Adjusts Gradle memory, configuration cache, and R8 settings.
build.gradle Updates Android and Google Services plugins.
banner/​build.gradle Updates SDK, toolchain, and release settings.
analytics/​build.gradle Updates SDK, billing, toolchain, and release settings.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread analytics/build.gradle
Comment on lines +28 to 30
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Comment thread banner/build.gradle
Comment on lines +27 to 29
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Comment thread interstitial/build.gradle
Comment on lines +27 to 29
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Comment thread mrec/build.gradle
Comment on lines +27 to 29
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Comment thread native/build.gradle
Comment on lines +27 to 29
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Comment thread rewarded/build.gradle
Comment on lines +27 to 29
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants