web-dev-qa-db-fra.com

Android Studio 1.0 et l'erreur "Les projets de bibliothèque ne peuvent pas définir applicationId"

Après la mise à jour Android Studio vers 1.0, je vois cette erreur:

Erreur: les projets de bibliothèque ne peuvent pas définir applicationId. ApplicationId est définivers 'com.super.app' dans la configuration par défaut.

J'ai mis à jour le plugin Gradle comme suggéré mais je ne comprenais pas comment résoudre ce problème.

106
Seraphim's

Basé sur ceci info :

ApplicationId dans les projets de bibliothèque

Vous ne pouvez pas utiliser applicationId pour personnaliser le package d'un projet de bibliothèque. Le nom du paquet doit être corrigé dans les projets de la bibliothèque (et spécifié comme nom du paquet dans le manifeste). Le plugin Gradle n'a pas appliqué cette restriction plus tôt.

Supprimer la variable applicationId de la bibliothèque build.gradle fichier devrait résoudre le problème.

204
Joel

Merci à Joel pour sa réponse correcte: Je ne dois supprimer qu'une ligne de te .gradle fichier:

defaultConfig {
        applicationId "com.super.app"   <---- remove this line
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

devient

defaultConfig {
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

et mon AndroidManifest.xml

 <manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
        xmlns:tools="http://schemas.Android.com/tools"
        package="com.super.app">
...

C'est la bonne solution si vous n'avez pas besoin de renommer le nom du package de votre application. Pour le renommer, vous devez utiliser "flavors":

Android {
   ...
   productFlavors {
       flavor1 {
           applicationId 'com.super.superapp'
       }
   }
60
Seraphim's

Juste au cas où cela aide quelqu'un:

Quand j'ai importé un projet Eclipse dans Android studio, j'ai eu une erreur ::

"Erreur: L'ID d'application et de test ne peut pas être identique"

Étrange cependant, mais j’ai examiné le build.gradle et trouvé les deux espaces réservés, l’un pour l’application et l’autre pour l’application test.

J'ai supprimé le testApplicationId de la manière suggérée dans ce message, ce qui m'a aidé à résoudre le problème.

Remarque: cette explication n'est pas liée aux erreurs affichées dans cette question, mais pourrait aider une personne qui présente une erreur similaire.

1
Kunal Khaire

Vous ne pouvez pas définir applicationId pour votre bibliothèque. Mais si vous souhaitez utiliser un identifiant dans votre fichier de construction, qui vous donnera le nom de votre paquet de bibliothèque, vous pouvez définir une variable pour le module, puis utiliser la valeur selon vos besoins.

par exemple: build.gradle de la bibliothèque

apply plugin: 'com.Android.library'

def libraryGroupId = 'com.google.example'
def libraryArtifactId = project.getName()
def libraryVersion = '1.1'

En outre, vous pouvez utiliser la valeur ci-dessous si nécessaire dans votre fichier de construction lui-même, dans lib.

Android {
compileSdkVersion 28

defaultConfig {
    minSdkVersion 21
    targetSdkVersion 28
    versionCode 1
    versionName "$libraryVersion"
    resValue "string", "Library", libraryGroupId"
 }
}
0
Mayuri K

J'ai essayé de supprimer la ligne applicationId. Cependant, il génère une autre erreur:

ECHEC: La construction a échoué avec une exception.

  • Qu'est-ce qui a mal tourné: Un problème est survenu lors de la configuration du projet ': app'.

    Impossible de résoudre toutes les dépendances pour la configuration ': app: _debugApkCopy'. Impossible de trouver com.bst.material-dialogs: core: 0.9.0.2. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: drag-select-recyclerview: 0.3.6. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: bridge: 3.2.5. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: sectioned-recyclerview: 0.2.3. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: assent: 0.2.5. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: icon-request: 1.5.2. Requis par: polar-dashboard-master: app: non spécifié Impossible de trouver com.bst: inquiry: 3.2.1. Requis par: polar-dashboard-master: app: non spécifié

  • Essayez: Exécuter avec l'option --stacktrace pour obtenir le suivi de la pile. Exécutez-la avec l'option --info ou --debug pour obtenir davantage de sorties de journal.

0