Android Studio ne signe pas le code pour la version debug
Android Studio refuse de signer mon code pour la version debug.
J'ai un vieux projet qui n'en avait pas la signature d'instructions dans la construction.gradle, j'ai donc ajouté ces selon cette Android gradle signingConfig erreur et d'autres postes.
Mon build.gradle fichier sur le niveau de module (module unique) ressemble à ceci (extrait):
android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "cc.appname.android"
minSdkVersion 11
targetSdkVersion 21
versionCode 1
versionName '1.0'
}
signingConfigs {
debug {
storeFile file('../../../.android/debug.keystore')
keyAlias 'androiddebugkey'
keyPassword 'android'
storePassword 'android'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
productFlavors {
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
Le type storefile peut être trouvé, parce que lorsque je modifie le chemin d'accès je reçois une erreur de compilation. Lorsque le chemin d'accès est correct, il compile, mais lorsque j'essaie d'utiliser le Facebook SDK dans mon application, il signale un mauvais keyhash.
J'ai remarqué que signingConfigs
signingConfig signingConfigs.debug
est souligné avec le message d'erreur "Ne peut pas déduire les types d'argument..."
Alors je suis allé dans les Paramètres de Projet dans l'INTERFACE utilisateur, retiré de la signature et de la relation entre la construire et la signature, enregistré le présent, et de l'ajouter en arrière. Même problème.
Je suis sûr que c'est quelque chose de très petite que je viens de négligé, ou Google renommé de la commande entre les versions, que ce soit.
Quelqu'un peut-il aider?
OriginalL'auteur Oliver Hausler | 2015-02-14
Vous devez vous connecter pour publier un commentaire.
Plusieurs choses ici, en supposant que votre
debug.keystore
est celui de la~/.android
dossier.Changer cela:
(magasin de la
debug.keystore
à la racine du projet):Vous n'avez pas besoin de remplacer le
debug
BuildType
, il signe tout naturellement avec ledebug
clés de toute façon, de sorte que vous pouvez supprimer:La finale
build.gradle
:signingConfig signingConfigs.debug
lui-même. Je crois qu'il y a un bug ou d'une dépendance manquante. Au moins, il fonctionne maintenant.Sur
rootProject.file('debug.keystore')
- merci pour le conseil, mais le chemin d'accès relatif commence toujours à la racine du projet. Comme le déboguer le fichier de clés est le plus haut sur le chemin, j'ai encore besoin de cd de nouveaurootProject.file('../../.android/debug.keystore')
. Donc, soit le déboguer le fichier de clés est dans la mauvaise position (pas dans la racine du projet), ou c'est fait exprès et de la convention de la construction du système, mais alors il ne devrait pas être référencé à partir de l'intérieur de construire.gradle.C'est bon vous avez compris!
J'ai eu à utiliser type storefile fichier('../../../.android/debug.fichier de clés').
C'est parce que vous vous mettez à plusieurs répertoires.
OriginalL'auteur Jared Burrows
L'ajout d'une réponse pour le nouveau gradle expérimentale plugin depuis la syntaxe est différente:
REMARQUE: le
android.signingConfigs
bloc doit être placé à l'extérieur de laandroid
bloc.OriginalL'auteur donturner