it-swarm.com.de

Ausführung fehlgeschlagen für Task ': app: processReleaseGoogleServices'. > Es wurde kein übereinstimmender Client für den Paketnamen gefunden

Jedes Mal, wenn ich versuche, mein Projekt zu erstellen, erhalte ich diese Fehlermeldung:

Execution failed for task ':app:processReleaseGoogleServices'.
No matching client found for package name 'com.my.package'

Ich habe den google-services.json erstellt und neu erstellt und die App und das Paket com.my.package verwendet.

Hier ist mein Projekt build.gradle:

buildscript {
  repositories {
    ...
  }
  dependencies {
    classpath 'com.Android.tools.build:gradle:2.0.0-beta6'
    classpath 'com.github.JakeWharton:sdk-manager-plugin:220bf7a88a7072df3ed16dc8466fb144f2817070'
    classpath 'com.neenbedankt.gradle.plugins:Android-apt:1.8'
    classpath 'io.fabric.tools:gradle:1.+'
    classpath 'com.newrelic.agent.Android:agent-gradle-plugin:4.265.0'
    classpath 'com.google.gms:google-services:2.0.0-alpha9'
  }
}
allprojects {
  repositories {
    ...
  }
}
// Define versions in a single place
ext {
  supportLibraryVersion = '23.2.0'
  playServicesVersion = '8.4.0'
}

Hier ist meine App build.gradle:

  apply plugin: 'Android-sdk-manager'
  apply plugin: 'com.Android.application'
  apply plugin: 'io.fabric'
  apply plugin: 'newrelic'
  apply plugin: 'com.neenbedankt.Android-apt'

  Android {
    packagingOptions {
      exclude 'LICENSE.txt'
      exclude 'META-INF/LICENSE'
      exclude 'META-INF/LICENSE.txt'
      exclude 'META-INF/NOTICE'
      exclude 'META-INF/services/javax.annotation.processing.Processor'
    }

    dexOptions {
      jumboMode true
    }

    lintOptions {
      disable 'InvalidPackage'
      abortOnError false
    }

    compileSdkVersion 23
    buildToolsVersion '23.0.2'

    defaultConfig {
      applicationId "com.my.package"
      minSdkVersion 15
      targetSdkVersion 23
    }

    buildTypes {
      debug {
        applicationIdSuffix '.debug'
        versionNameSuffix '-DEBUG'
        ...
      }

      staging {
        applicationIdSuffix '.staging'
        versionNameSuffix '-STAGING'
        ...
      }

      release {
        ...
      }
    }
  }

  dependencies {
    compile "com.Android.support:support-v4:$rootProject.supportLibraryVersion",
            "com.Android.support:support-annotations:$rootProject.supportLibraryVersion",
            "com.Android.support:percent:$rootProject.supportLibraryVersion",
            "com.Android.support:appcompat-v7:$rootProject.supportLibraryVersion",
            "com.Android.support:mediarouter-v7:$rootProject.supportLibraryVersion",
            "com.google.Android.gms:play-services-base:$rootProject.playServicesVersion",
            "com.google.Android.gms:play-services-cast:$rootProject.playServicesVersion",
            "com.google.Android.gms:play-services-gcm:$rootProject.playServicesVersion",
            "com.google.Android.gms:play-services-analytics:$rootProject.playServicesVersion",
            ...
            'com.newrelic.agent.Android:android-agent:4.265.0',
            'com.Android.support:multidex:1.0.0'
    compile 'com.squareup.dagger:dagger:1.2.1'
  }

  apply plugin: 'com.google.gms.google-services'

Ich habe die Anweisungen hier mehrmals befolgt. Ich verwende auch meine Release-Konfiguration, daher gibt es keinen Grund, warum applicationIdSuffix ein Problem sein sollte. Com.my.pacakage ist auch nur ein Stand-In für meinen Paketnamen. Was kann ich tun, um dieses Problem zu lösen?

6
MrEngineer13

Das Problem lag eigentlich bei NewRelic nicht bei meiner Konfiguration. Ich entfernte es und folgte dieser Antwort als ich BuildTypes verwendete. Nun wird es wie erwartet kompiliert.

0
MrEngineer13

Sie müssen google-services.json für alle Flavors (Freigabe und Entwicklung usw.) angeben.

Ein einzelner google-services.json kann Json/data für alle Geschmacksrichtungen haben. Rufen Sie die Google Developers Console auf und generieren Sie die google-services.json-Datei neu

Update

Sie können auch separate google-services.json-Dateien für Flavors erstellen

https://developers.google.com/Android/guides/google-services-plugin

5
user4774371

Google hat gerade die Unterstützung für Flavors in Version 2.0 des Play Services Plugins integriert. Seit dieser Version des Gradle Plugins com.google.gms:google-services:2.0.0-alpha9

du kannst das

 enter image description here

Für weitere Details gehen Sie bitte auf den folgenden Link. Wenn Sie weitere Informationen dazu benötigen, was dieses Plugin mit diesen Json-Dateien macht, hier ist es

Link zu den offiziellen Dokumenten:

Und hier geht es zur neuesten Version von diesem Plugin

Ref link.

3

In meinem Fall hat es mein Problem gelöst 

      ...  
 "client": [
        {
          "client_info": {
            "mobilesdk_app_id": "yourid",
            "Android_client_info": {
              "package_name": "ru.example.app"
            }
          },
       ...

package_name sollte mit der in applicationId identisch sein

        defaultConfig {
                applicationId "ru.example.app"
                minSdkVersion 15
                targetSdkVersion 23
                ...
    }
2

Wahrscheinlich etwas spät, aber ich hatte ein ähnliches Problem. 

Es kam vor, als ich meine App anfangs mit Firebase Analytics verbunden hatte, und zwar aus irgendeinem Grund, weil sie nur meine "Debug" -Funktion aufnahm.

Ich musste mich bei Firebase anmelden, zur Konsole gehen, das entsprechende Projekt auswählen und dann die zusätzliche Variante "release" manuell hinzufügen.

Dann habe ich in Android Studio (das die Json-Datei automatisch von Firebase in Studio aktualisiert und die Json-Datei automatisch aktualisiert und heruntergeladen hat) eine Verbindung zu Firebase hergestellt, meine App neu kompiliert und sie hat funktioniert.

0
gregrobinz