- Ressources essentielles pour le développement Android
1.1 Sites de référence
Voici les adresses officielles nécessaires au développement :
- Site des développeurs Android : https://developer.android.google.cn/
- Portail AOSP : https://source.android.google.cn/
- Documentation Kotlin : https://kotlinlang.org/
- Gestionnaire de bugs Google : https://issuetracker.google.com
- Code Review Android : https://android-review.googlesource.com
1.2 Téléchargement de l'IDE
Android Studio peut être téléchargé depuis plusieurs sources :
- Site officiel Android : https://developer.android.google.cn/studio
- Miroirs chinois : https://www.androiddevtools.cn/
- Installation du SDK Android
L'installation du SDK via Android Studio peut être très lente, voire impossible dans certaines régions. Voici deux solutions.
2.1 Méthode par modification du fichier hosts
Cette approche permet d'accélérer significativement le téléchargement en utilisant une adresse IP proche.
Procédure :
- Utiliser un outil de ping comme https://ping.chinaz.com/dl.google.com pour tester dl.google.com
- Sélectionner l'adresse IP avec le temps de réponse le plus faible
- Ajouter cette IP au fichier hosts du système
120.253.255.97 dl.google.com
Emplacement du fichier hosts selon le système d'exploitation :
| Système | Chemin du fichier hosts |
|---|---|
| Windows | C:\Windows\System32\drivers\etc\hosts |
| Linux | /etc/hosts |
| macOS | /etc/hosts |
| Android | /system/etc/hosts |
Notes importantes :
- Linux et macOS nécessitent les droits root
- iOS nécessite un jailbreak, Android nécessite root
- Windows : exécuter
ipconfig /flushdnsdans CMD - Linux : utiliser
sudo nscd restart
Cette méthode fonctionne également pour GitHub :
20.205.243.166 github.com
185.199.109.153 github.io
2.2 Méthode par configuration proxy
Configurer un proxy pour accéder aux dépôts étrangers :
- Ouvrir File > Settings > Appearance & Behavior > System Settings > HTTP Proxy
- Sélectionner Auto-detect proxy configuration URL
- Entrer l'adresse d'un service proxy chinois
- Vérifier la connexion avec Check connection
Miroirs open source disponibles :
| Organisation | Adresse | Port |
|---|---|---|
| Université de Dongbei | mirror.neu.edu.cn | 80 |
| Université de technologie de Shanghai | ftp.sjtu.edu.cn | 80 |
| Université de Lanzhou | mirror.lzu.edu.cn | 80 |
| Université Jiaotong de Beijing | mirror.bjtu.edu.cn | 80 |
| Université de Chongqing | mirrors.cqu.edu.cn | 80 |
- Installation et configuration de Gradle
Deux méthodes existent pour installer Gradle : automatique ou manuelle.
3.1 Installation automatique par défaut
Lors de la compilation, Gradle se télécharge automatiquement selon la configuraton du fichier gradle-wrapper.properties situé dans Project/nom-projet/gradle/wrapper/.
Paramètres de configuration :
distributionBase: répertoire de stockage après décompression (par défautC:\Users\XXX\.gradle)distributionPath: chemin relatif vers le répertoire Gradle décompressézipStoreBase: répertoire temporaire pour les fichiers ZIPzipStorePath: chemin relatif pour les fichiers ZIP temporairesdistributionUrl: URL du serveur de téléchargement et version de Gradle
3.2 Configuration manuelle recommandée
Cette méthode est plus rapide et fonctionne même sans accès Internet.
Configuration simplifiée
Modifier le fichier distributionUrl pour utiliser un miroir chinois :
distributionUrl=https\://mirrors.aliyun.com/macports/distfiles/gradle/gradle-8.4-bin.zip
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.0-bin.zip
distributionUrl=https\://mirrors.huaweicloud.com/gradle/gradle-8.4-bin.zip
Attention : ajouter le slash après https.
Configuration hors ligne
Étape 1 : Téléchargement
Récupérer Gradle depuis l'un de ces serveurs :
- Site officiel : https://gradle.org/releases/
- Services officiels Gradle : https://services.gradle.org/distributions/
- Miroir Huawei : https://mirrors.huaweicloud.com/gradle/
- Miroir Tencent : https://mirrors.cloud.tencent.com/gradle/
- Miroir Alibaba : https://mirrors.aliyun.com/macports/distfiles/gradle/
Étape 2 : Modification du fichier de configuration
Mettre à jour le numéro de version dans distributionUrl.
Étape 3 : Placement du fichier
Placer l'archive ZIP (sans décompressser) dans l'un de ces répertoires :
- Chemin par défaut :
C:\Users\XXX\.gradle\wrapper\dists\gradle-8.0-bin\ca5e32b...otwh\ - Chemin personnalisé : spécifié dans Settings > Gradle > Local installation
Étape 4 : Finalisation
Cliquer sur Try Again dans Android Studio.
Vérifier l'intégrité du téléchargement dans le répertoire de destination.
Configuration semi-hors ligne
Pour migrer un projet d'un environnement connecté vers un environnement isolé :
- Copier le répertoire
.gradle\complet vers le nouvel environnement - Synchroniser les paramètres Gradle et le fichier
gradle-wrapper.properties
Modification du répertoire par défaut
Pour modifier le chemin par défaut de Gradle :
-
Ouvrir le fichier
studio64.exe.vmoptionsdans le répertoirebind'Android Studio -
Ajouter :
-Dgradle.user.home=D:\Win10_Programs\develop\Android\AndroidGradle -
Redémarrer l'IDE
-
Problèmes de compilation courants
Erreur : « unable to find valid certification path to requested target »
Cause : Chemin du certificat invalide, souvent dû à un chemin Gradle personnalisé.
Solution :
- Ouvrir File > Settings > Build, Execution, Deployment > Build Tools > Gradle
- Rétablir le chemin par défaut :
C:/Users/nom-utilisateur/.gradle/wrapper/dists/gradle-6.7.1-all
Erreur : « Could not find method dependencyResolutionManagement() »
Cause : Incompatibilité avec les paramètres de build du projet.
Solution : Modifier le fichier build.gradle au niveau racine :
// Fichier de configuration principal du projet
buildscript {
repositories {
maven {
url 'https://plugins.gradle.org/m2/'
}
maven {
url 'https://maven.aliyun.com/repository/jcenter'
}
maven {
url 'https://maven.aliyun.com/repository/google'
}
maven {
url 'https://maven.aliyun.com/repository/gradle-plugin'
}
maven {
url 'https://maven.aliyun.com/repository/public'
}
}
dependencies {
classpath "com.android.tools.build:gradle:7.1.2"
}
}
// Dépendances du projet
allprojects {
repositories {
maven {
url 'https://maven.aliyun.com/repository/jcenter'
}
maven {
url 'https://maven.aliyun.com/repository/google'
}
}
}