Recherche…


Remarques

Pour rendre votre fichier APK aussi petit que possible, vous devez activer la réduction pour supprimer le code et les ressources inutilisés dans votre version.

Réduire le code avec ProGuard

Pour activer la réduction du code avec ProGuard, ajoutez minifyEnabled au type de génération approprié dans votre fichier build.gradle .

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

où:

  • minifyEnabled true : Activer le code réduit
  • La getDefaultProguardFile('proguard-android.txt') obtient les paramètres ProGuard par défaut du SDK Android
  • Le fichier proguard-rules.pro est l'endroit où vous pouvez ajouter des règles ProGuard personnalisées.

Réduire les ressources

Pour activer la réduction des ressources, définissez la propriété shrinkResources sur true dans votre fichier build.gradle .

android {
    ...

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

Faites attention car la réduction des ressources ne fonctionne que si vous réduisez le code .

Vous pouvez personnaliser les ressources à conserver ou à supprimer en créant un fichier XML comme celui-ci:

<?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" />

Enregistrez ce fichier dans le dossier res/raw .

Supprimer les ressources alternatives inutilisées

Toutes les bibliothèques sont fournies avec des ressources qui ne sont pas nécessairement utiles pour votre application. Par exemple, les services Google Play sont fournis avec des traductions pour les langues que votre propre application ne prend même pas en charge.

Vous pouvez configurer le fichier build.gradle pour spécifier la ressource que vous souhaitez conserver.
Par exemple:

defaultConfig {
    // ...

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


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow