Le contexte:
J'essaie de configurer Google Analytics pour mon application. (ayant 4 personnalisés buildTypes
et plus que quelques-uns productFlavors
)
Cela fonctionne très bien lorsque je sélectionne celui Build Variant
qui a l' applicationId
ensemble com.my.app.package.name
(le nom du package utilisé lors de la génération de google-services.json
). Mais, mes autres saveurs ont des ID d'application différents.
J'ai suivi le guide officiel pour l'installer.
L'erreur que j'obtiens lorsqu'une autre variante de build est sélectionnée dans Build Variants Tab
(qui a un applicationId
(nom de package) différent est la suivante:
Erreur: l'exécution a échoué pour la tâche ": app: processAllcategoriesDebugfreeGoogleServices".
Aucun client correspondant trouvé pour le nom de package «com.my.app.package.name.debug»
Explication du message d'erreur:
Dans le nom de la tâche dans le message d'erreur ci Debugfree
- dessus est ma coutume buildType
et Allcategories
est l'une des miennes productFlavors
.
Je comprends l'erreur et je sais que le nom du package est différent de celui que j'ai utilisé lors de la génération du json, mais c'est ce que j'essaie de comprendre.
Problème:
Maintenant, le google-services.json
réside dans le app
dossier et, par conséquent, je ne peux pas les séparer pour chaque saveur de produit en les déposant dans le dossier de jeu de sources spécifiques à la saveur.
Des questions:
- Ma coutume
byildType
pour déboguer les suffixes.debug
vers leapplicationId
(nom du package). Existe-t-il un moyen de le faire fonctionner avec celuigoogle-services.json
qui a ma versionapplicationId
(c'est-à-dire sans le suffixe.debug
) - Existe-t-il un moyen de configurer plusieurs versions de produit dans le même
google-services.json
fichier sans utiliser de fichiers et de tâches distincts pour copier le fichier requis dans leapp
dossier. Je sais que cela peut être fait en utilisanttask
comme mentionné dans cet article . Existe-t-il un moyen plus simple de n'avoir qu'un seul fichier ou de choisir le bon fichier en fonction de la configuration de Gradle? - Je vois que le
package_name
champgoogle-services.json
contient le nom du packagecom.my.app.package.name
. Puis-je ajouter plusieurs noms de packages manuellement pour fonctionner avec toutes les variantes de build? Si oui, comment faire? Impossible de trouver des instructions dans les documentations.