Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c6532064 authored by Guillaume Jacquart's avatar Guillaume Jacquart
Browse files

chore: minify to reduce apk size.

parent eade0703
Loading
Loading
Loading
Loading
Loading
+45 −3
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ plugins {
    alias(libs.plugins.hilt.android)
    alias(libs.plugins.detekt)
    alias(libs.plugins.kotlin.compose)
    alias(libs.plugins.sentry)
}

repositories {
@@ -59,9 +60,13 @@ android {

    buildTypes {
        release {
            minifyEnabled false
            shrinkResources false
            minifyEnabled true
            shrinkResources true
            debuggable false
            proguardFiles(
                    getDefaultProguardFile("proguard-android-optimize.txt"),
                    "proguard-rules.pro"
            )
            signingConfig = null
        }
        debug {
@@ -135,6 +140,7 @@ dependencies {
    implementation(libs.dagger.hilt.android)
    ksp(libs.dagger.hilt.compiler)
    implementation(libs.eos.telemetry)
    implementation(libs.timber)
    implementation(libs.androidx.lifecycle.runtime.compose)

    // AndroidX, The Basics
@@ -147,7 +153,7 @@ dependencies {
    implementation 'androidx.preference:preference-ktx:1.2.0'

    // JSON serialization
    implementation 'com.google.code.gson:gson:2.10'
    implementation 'com.google.code.gson:gson:2.13.2'

    // Room (SQLite)
    def room_version = libs.versions.androidx.room.get()
@@ -208,3 +214,39 @@ tasks.withType(io.gitlab.arturbosch.detekt.Detekt).configureEach {
tasks.withType(io.gitlab.arturbosch.detekt.DetektCreateBaselineTask).configureEach {
    jvmTarget = "17"
}

sentry {
    // The slug of the Sentry organization to use for uploading proguard mappings/source contexts.
    org = "murena-sas"
    // The slug of the Sentry project to use for uploading proguard mappings/source contexts.
    projectName = "notifications-receiver"
    // The authentication token to use for uploading proguard mappings/source contexts.
    // WARNING: Do not expose this token in your build.gradle files, but rather set an environment
    // variable and read it into this property.
    authToken = System.getenv("SENTRY_AUTH_TOKEN")

    // Enable or disable the tracing instrumentation.
    // Does auto instrumentation for specified features through bytecode manipulation.
    // Default is enabled.
    tracingInstrumentation {
        enabled = false
    }

    autoInstallation {
        enabled = false
    }

    // Disables or enables dependencies metadata reporting for Sentry.
    // If enabled, the plugin will collect external dependencies and
    // upload them to Sentry as part of events. If disabled, all the logic
    // related to the dependencies metadata report will be excluded.
    //
    // Default is enabled.
    includeDependenciesReport = false

    // Whether the plugin should send telemetry data to Sentry.
    telemetry = false

    ignoredBuildTypes = ["debug"]

}

app/proguard-rules.pro

0 → 100644
+3 −0
Original line number Diff line number Diff line
-keep class io.heckel.ntfy.msg.Message { *; }
-keep class io.heckel.ntfy.msg.MessageAttachment { *; }
-keep class io.heckel.ntfy.msg.MessageAction { *; }
 No newline at end of file
+4 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@ kotlinx-coroutines = "1.10.2"
kotlinx-serialization-json = "1.9.0"
markwon = "4.6.2"
markwon-compose = "0.5.8"
timber = "5.0.1"

# Tests
junit = "4.13.2"
@@ -26,6 +27,7 @@ detekt = "1.23.8"
hilt = "2.57.2"
ksp = "2.2.0-2.0.2"
ktlint = "1.6.0"
sentry = "5.12.2"
spotless = "8.0.0"

[libraries]
@@ -53,6 +55,7 @@ markwon = { group = "io.noties.markwon", name = "core", version.ref = "markwon"
markwon-compose = { group = "com.github.jeziellago", name = "compose-markdown", version.ref = "markwon-compose" }
markwon-html = {group = "io.noties.markwon", name = "html", version.ref = "markwon" }
markwon-strikethrough = {group = "io.noties.markwon", name = "ext-strikethrough", version.ref = "markwon" }
timber = { group = "com.jakewharton.timber", name = "timber", version.ref = "timber" }

# Test libraries
junit = { group = "junit", name = "junit", version.ref = "junit" }
@@ -65,4 +68,5 @@ detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
hilt-android = { id = "com.google.dagger.hilt.android", version.ref ="hilt" }
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
sentry = { id = "io.sentry.android.gradle", version.ref = "sentry" }
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
+1 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@
    <issue id="Typos" severity="ignore" />
    <issue id="StopShip" severity="ignore" />
    <issue id="InvalidPackage" severity="ignore" />
    <issue id="LogNotTimber" severity="ignore" />

    <!-- WARNINGS -->
    <issue id="MissingTranslation" severity="warning" />