app-release-unsigned.apk n’est pas signé

J’ai téléchargé le fichier zip d’une application Android sur github et j’essaie de l’exécuter, mais j’ai un dialog avec ce message

app-release-unsigned.apk is not signed. Please configure the signing information for the selected flavor using the Project Structure dialog. 

J’utilise Android Studio. Qu’est-ce que je suis supposé faire?

    Si quelqu’un veut déboguer la version de publication à l’ aide d’Android Studio, procédez comme suit:

    1. Définissez la variante de construction en mode de publication.

    entrer la description de l'image ici

    1. Cliquez avec le bouton droit sur l’ application dans le volet de navigation de gauche, cliquez sur Ouvrir les parameters du module .

    2. Aller à l’onglet Signature. Ajoutez une configuration de signature et remplissez les informations. Sélectionnez également votre trousseau.

    entrer la description de l'image ici

    1. Accédez à l’onglet Type de construction . Sélectionnez le mode de libération et définissez:

    -Débugable à vrai .

    -Sign Config à la config . (Celui que vous venez de créer).

    entrer la description de l'image ici

    Synchronisez votre gradle. Prendre plaisir!

    Assurez-vous que la variante de génération est définie pour déboguer (et non pas pour libérer ) dans Android Studio (consultez le panneau des variantes de construction ).

    S’il est défini sur debug, il doit automatiquement signer l’application avec le fichier de clés de débogage généré automatiquement, sans modifier les scripts de génération.

    Cependant, vous devrez créer et configurer un fichier de clés spécifique pour la publication.

    Documentation officielle, couvrant les modes de débogage et de publication: https://developer.android.com/tools/publishing/app-signing.html

    Toujours signer votre version en utilisant votre script build.gradle DSL comme ceci:

      android { signingConfigs { debug { storeFile file("debug.keystore") } myConfig { storeFile file("other.keystore") storePassword "android" keyAlias "androidotherkey" keyPassword "android" } } buildTypes { bar { debuggable true jniDebugBuild true signingConfig signingConfigs.debug } foo { debuggable false jniDebugBuild false signingConfig signingConfigs.myConfig } } } 

    Si vous voulez comprendre un peu plus le système de construction Gradle associé à Android Studio, visitez simplement:

    Gradle Plugin Guide de l’utilisateur

    J’ai été en mesure de déboguer APK signé, Suivez cette procédure: –

    1. Choisissez la version “release” dans la barre d’outils “Variante de build”
    2. Dans le Build.gradle pour le module, définissez le debuggable true pour le type de version release
    3. Allez dans Fichier-> Structure du projet-> sous l’onglet de signature, remplissez toutes les informations-> Sous l’onglet Saveurs-> Choisissez la signature Config que vous venez de créer.
    4. Définir les points d’arrêt
    5. Exécutez l’application en mode débogage

    si vous voulez exécuter l’application en mode débogage

    1) Regardez le côté gauche en bas, ci-dessus les favoris il y a des variantes de construction

    2) Cliquez sur Variantes de construction. Cliquez sur release et choisissez debug

    ça marche parfait !!!

    Pour des raisons de sécurité, vous ne pouvez pas installer un fichier unsigned apk sur Android. Donc, si vous n’avez que l’apk non signé: vous devez le signer. Voici comment faire: link

    Notez que vous pouvez signer l’apk avec un certificate auto-signé.

    Une alternative peut être soit:

    • pour télécharger l’apk signé si disponible.
    • pour télécharger les sources, comstackz-les (avec Android-Studio ou gradle ou …). Il produira plusieurs apks et l’un d’eux sera signé avec votre clé de débogage (et vous pourrez donc l’installer)

    signerConfigs devrait être avant buildTypes

     signingConfigs { debug { storeFile file("debug.keystore") } myConfig { storeFile file("other.keystore") storePassword "android" keyAlias "androidotherkey" keyPassword "android" } } buildTypes { bar { debuggable true jniDebugBuild true signingConfig signingConfigs.debug } foo { debuggable false jniDebugBuild false signingConfig signingConfigs.myConfig } } 

    Le projet d’application que vous avez téléchargé peut inclure une information signée dans le fichier de build.gradle. Si vous avez vu des codes comme ceux-ci:

     buildTypes { debug { signingConfig signingConfigs.release } release { signingConfig signingConfigs.release } } 

    vous pouvez les supprimer et réessayer.

    Dans la barre d’outils, sélectionnez Variantes de construction. Changez la variante de version de la version à la mise au point.

    Mon problème a été résolu en changeant la variante de construction comme suggéré par Stéphane, si quelqu’un avait du mal à trouver les “variantes de construction” comme je l’ai fait ici est une capture d’écran où vous pouvez le trouver.

    entrer la description de l'image ici

    Ma solution a été de changer le nom de ma configuration de signature par défaut “config” en “debug”. Pour le vérifier, je l’ai changé en un autre nom aléatoire et j’ai de nouveau obtenu l’erreur, puis je suis revenu à “debug” et l’erreur était partie. Donc, même si cela semble artificiel et que j’ai tendance à ne pas croire que c’est toute l’histoire, essayez cette solution.

    J’apparais aussi ce problème et mon code ci-dessous

      storeFile file(properties.getProperty("filepath")) storePassword properties.getProperty("keypassword") keyAlias properties.getProperty("keyAlias") keyPassword properties.getProperty("keypassword") 

    la raison est une erreur de nom de propriété, il doit s’agir d’un mot de passe clé et non d’un mot de passe

    Comment j’ai résolu ce problème

    Cette erreur se produit car vous avez défini vos variantes de build en mode édition. configurez-le pour construire le mode et exécutez le projet à nouveau.

    Si vous souhaitez exécuter en mode release, générez simplement un fichier apk signé comme nous le faisons normalement lors de la sortie de l’application