Skip to content

Many Improvements to Android Project Configuration #3245

Draft
bitmold wants to merge 10 commits into
developfrom
gradle
Draft

Many Improvements to Android Project Configuration #3245
bitmold wants to merge 10 commits into
developfrom
gradle

Conversation

@bitmold
Copy link
Copy Markdown
Collaborator

@bitmold bitmold commented May 25, 2026

  • first was getting my bearings with Quiet again, and realized I couldn't do my normal ./graldew assembleDebug anymore so updated documentation and other scripts that reliad on that
  • removed unused android dependencies that slow down gralde syncs and ship in release binaries
  • updated android dependencies, and gradle dependencies as much as possible
    • Fixed some stuff in the gradle scripts that will eventually break in newer gradles
  • made a gradle version catalog in android/gradle/libs.versions.toml, essentially the package.json of the android world cuz deps were declared randomly
  • lots of gradle stuff between app/build.gralde, build.gradle, and settings.gradle were declared multiple times (and overwritten in some cases by one file over another). all gradle tooling follows a modern appraoch now. switched build.gralde and settings.gradle to the new Kotlin DSL.
  • Quiet now compiles against Android 16, though it does not target android 16 (this still requires a react and a react native upgrade

im putting this as draft for now because i still need a minute to test this, but it looks good

bitmold added 9 commits May 25, 2026 02:49
… project requires assembleStandardDebug. UPdated 16kb alignment script to reflect this incase its needed again in the future
	- androidx work classes to latest release
	- updated firebsae bill of materials to latest v33 release
	- use the newly stable version of androidx.security crypto library intsead of alpha
	- updated guava, gson

	- migrated to firebase bill of materials 34...
	https://www.blamechris.com/archery-apprentice-docs/developer-guide/guides/firebase-ktx-deprecation
	this required switching from firebase-messaging-ktx to jsut firebase-messaging

	in the 34 series, all KTX modules are now just part of the main API
	https://firebase.google.com/docs/android/kotlin-migration
	FirebaseMessagingModule.kt never used any of these extension functions, so this required no code changes, just build script changes
…ons catalog to pin android dep versions across multiple gradle scripts
…ype of thing is depends on the order the tasks (aka methods) are declared in the build script. this removes the warning, but is also needed when upgrading to newer gradle versions (which eventually you have no choice but to do)
…e the android gralde plugin, which like so many things here, requires a react native upgrade
…s of the gradle project (app/build.gradle, build.gradle, settings.gradle)

Made it so project wasn't redefining settings across 3 gradle files. updated root build.gradle and settings.gradle to new Kotlin DSL
…dle applies settings and we autolink react native pkgs into quiet
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.

1 participant