Outils pour utilisateurs

Outils du site


prog:gradle

Ceci est une ancienne révision du document !


Options en ligne de commande

Pour améliorer la vitesse de compilation, essayer d'activer les options --parallel --daemon --configuration-cache --build-cache

build.gradle

Android

Debug / Release

Pour du Debug :

shrinkResources false
minifyEnabled false
debuggable true
jniDebuggable true
ndk {
  debugSymbolLevel 'FULL'
}
packagingOptions {
  doNotStrip '**/*.so'
}

Pour du Release :

minifyEnabled se met à false pour les librairies sinon le fichier classes.jar sera vide et il ne sera pas possible de utiliser la librairie externe sous Android Studio.

shrinkResources se met à false pour une librairie.

shrinkResources se met à false si minifyEnabled est déjà à false.

minifyEnabled se met à false si on souhaite utilise jni, y compris dans l'application principale en Android avec JNI qui utilise une librairie avec NDK.

shrinkResources true
minifyEnabled true
debuggable false
jniDebuggable false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

Attention, il existe les fichiers proguard-android-optimize.txt et proguard-android.txt. Les deux sont destinés au release. Le fichier optimize ajoute des optimisations qui peuvent être incompatibles avec certains programmes. Shrink, obfuscate, and optimize your app, Archive du 19/09/2022 le 22/09/2022

API

Java

  • Ajouter des options de compilation
android {
  gradle.projectsEvaluated {
    tasks.withType(JavaCompile) {
      options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
    }
  }
  ...

Mise à jour

  • com.android.tools.build et de la version de Gradle

Bien mettre à jour la classe com.android.tools.build du build.gradle en même temps que le champ distributionUrl de Gradle dans le fichier gradle-wrapper.properties.

Voir la page Gradle Plugin pour la compatibilité entre la version de gradle et son plugin.

Voir la page Maven pour la dernière version disponible de la classe com.android.tools.build:gradle.

Il est aussi possible de lancer la commande suivante deux fois :

./gradle wrapper --gradle-version --7.5.1

Ligne de commandes

Les paramètres des lignes de commande sont accessibles depuis un fichier build.gradle.

  • project.gradle.startParameter.logLevel.name() == 'DEBUG' permet de savoir si l'option --debug a été appliquée.

Erreurs

Certificats

  • Unable to find valid certification path to requested target

C'est évidemment un problème de certificat à cause d'un serveur faisant du DPI (Deep Packet Inspection).

Il faut l'installer dans la machine virtuelle Java. Faire également la même chose pour Android Studio.

Regarder le contenu de la variable JAVA_HOME (C:\jdk-11.0.15+10 par exemple).

Aller dans le dossier C:\jdk-11.0.15+10\lib\security en ligne de commande.

Et lancer la commande ../../bin/keytool -importcert -file /path/to/your/certificate/my-root-ca-cert.cer -keystore cacerts -storepass changeit -noprompt

Avec changeit le mot de passe par défaut et my-root-ca-cert.cer le certificat du serveur DPI.

Il est nécessaire de redémarrer la session car l'application gradle tourne peut-être en arrière plan.

Android Studio - Unable to find valid certification path to requested target Archive du 02/11/2014 le 21/02/2023

prog/gradle.1676995073.txt.gz · Dernière modification : 2023/02/21 16:57 de root