Zoeken…


Opmerkingen

Om uw APK-bestand zo klein mogelijk te maken, moet u verkleinen inschakelen om ongebruikte code en bronnen in uw release-build te verwijderen.

Verklein de code met ProGuard

Om het verkleinen van de code met ProGuard mogelijk te maken, voegt u minifyEnabled true toe aan het juiste build.gradle in uw build.gradle bestand.

android {
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile(‘proguard-android.txt'),
                    'proguard-rules.pro'
        }
    }
}

waar:

  • minifyEnabled true : code krimpen inschakelen
  • De getDefaultProguardFile('proguard-android.txt') haalt de standaard ProGuard-instellingen op van de Android SDK
  • In het bestand proguard-rules.pro kunt u aangepaste ProGuard-regels toevoegen

Verklein de middelen

Om het inkrimpen van bronnen in te schakelen, stelt u de eigenschap shrinkResources in op true in uw build.gradle bestand.

android {
    ...

    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

Let op, het inkrimpen van bronnen werkt alleen in combinatie met het inkrimpen van code .

U kunt aanpassen welke bronnen u wilt behouden of verwijderen door een XML-bestand als volgt te maken:

<?xml version=1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
    tools:keep="@layout/mylayout,@layout/custom_*"
    tools:discard="@layout/unused" />

Sla dit bestand op in de map res/raw .

Verwijder ongebruikte alternatieve bronnen

Alle bibliotheken worden geleverd met bronnen die niet noodzakelijk nuttig zijn voor uw toepassing. Google Play Services wordt bijvoorbeeld geleverd met vertalingen voor talen die uw eigen applicatie niet eens ondersteunt.

U kunt het bestand build.gradle configureren om op te geven welke bron u wilt behouden.
Bijvoorbeeld:

defaultConfig {
    // ...

    resConfigs "en", "de", "it"
    resConfigs "nodpi", "xhdpi", "xxhdpi", "xxxhdpi"
}


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow