Bonjour,
Dans le cadre de ma formation en sécurité informatique, j'étudie le code source d'un pare-feu pour smartphone Android. J'ai commencé plusieurs tuto pour prendre en main l'IDE Android Studio depuis quelques jours mais ce domaine est tout nouveau pour moi.
Le problème qui m'amène ici est le suivant :
Mon premier objectif est de faire tourner l'application pour étudier les logs générés. Mais dès cette première étape, je rentre des difficultés.
J'ai récupéré sur GitHub les sources de l'appli que je dois étudier. Quand je cherche à les compiler, j'ai une erreur m'indiquant que le fichier keystore.properties est absent. Après pas mal de recherches, j'ai vu qu'il fallait que l'appli soit signée pour pouvoir être compilée. J'ai donc créé mon porpre keystore en ligne de commande :
En effet, je n'ai pas pour une raison que j'ignore la possibilité de générer les clés via le menu build d'Android Studio.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 keytool -genkeypair -v -keystore essaiKeystore.jks -storepass XXXX -alias YYYY -keypass ZZZZ -keyalg RSA -keysize 2048 -validity 10000
J'ai ensuite édité à la main le fichier keystore.properties à la racine de mon projet :
J'ai ensuite recompilé les sources mais j'obtiens l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 storePassword=XXXX keyPassword=ZZZZ keyAlias=YYYY storeFile=/Users/DLG/essaiKeystore.jks
Gradle sync failed: Could not find method storeFile() for arguments [/Users/DLG/.../keystore.properties] on SigningConfig_Decorated{name=release, storeFile=null, storePassword=null, keyAlias=null, keyPassword=null, storeType=jks, v1SigningEnabled=true, v2SigningEnabled=true} of type com.android.build.gradle.internal.dsl.SigningConfig.
J'ai également essayé de déclarer le keystore via le menu File>ProjectStructure>Signing Configs sans succès...
J'ai aussi vu que je devais pouvoir compiler en build variant ''debug'' pour ue les clés de debug soient utilisées mais je n'ai pas encore réussi à faire cela. Le menu Build>Select Build Variant est grisé alors que la variant build est bien présente dans build.gradle :
Bref, je suis perdu...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 buildTypes { release { minifyEnabled = true useProguard = true proguardFiles.add(file('proguard-rules.pro')) signingConfig signingConfigs.release buildConfigField "boolean", "PLAY_STORE_RELEASE", "false" buildConfigField "String", "HOSTS_FILE_URI", "\"http://www.netguard.me/hosts\"" buildConfigField "String", "GITHUB_LATEST_API", "\"https://api.github.com/repos/M66B/NetGuard/releases/latest\"" manifestPlaceholders = [keystore: keystoreProperties] } play { minifyEnabled = true useProguard = true signingConfig signingConfigs.release proguardFiles.add(file('proguard-rules.pro')) buildConfigField "boolean", "PLAY_STORE_RELEASE", "true" buildConfigField "String", "HOSTS_FILE_URI", "\"\"" buildConfigField "String", "GITHUB_LATEST_API", "\"\"" } debug { minifyEnabled = true useProguard = true proguardFiles.add(file('proguard-rules.pro')) buildConfigField "boolean", "PLAY_STORE_RELEASE", "false" buildConfigField "String", "HOSTS_FILE_URI", "\"http://www.netguard.me/hosts\"" buildConfigField "String", "GITHUB_LATEST_API", "\"https://api.github.com/repos/M66B/NetGuard/releases/latest\"" manifestPlaceholders = [keystore: keystorePropertiesFile] } }Une âme charitable pourrait-elle m'aider?
Partager