Cordova-plugin-firebase: Kann nicht mehr auf Android bauen

Erstellt am 18. Juni 2019  ·  59Kommentare  ·  Quelle: arnesson/cordova-plugin-firebase

Ich habe meine Anwendung normal entwickelt. Ich konnte es heute 10 mal erfolgreich bauen.
Ich wurde jedoch erneut kompiliert und kann jetzt nicht mehr ausführen, wenn das Firebase-Plugin im Projekt ist.

Wenn ich das Plugin entferne, läuft das Projekt.

Ich benutze

Der folgende Build-Fehler tritt auf:

:app:processDebugResources/home/sandro/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/c9104c96e21bf9c9613f4661f4e5d49e/res/values/values.xml:246:5-69: AAPT: error: resource android:attr/fontVariationSettings not found.

/home/sandro/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/c9104c96e21bf9c9613f4661f4e5d49e/res/values/values.xml:246:5-69: AAPT: error: resource android:attr/ttcIndex not found.

/home/user/my_cordova_project/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:244: error: resource android:attr/fontVariationSettings not found.
/home/user/my_cordova_project/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:244: error: resource android:attr/ttcIndex not found.
error: failed linking references.

Failed to execute aapt
com.android.ide.common.process.ProcessException: Failed to execute aapt
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
    at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
    at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
    at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
    at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
    ... 48 more
Caused by: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
    at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
    at com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    ... 1 more
Caused by: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
    at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
    at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
    at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.

Hat noch jemand das gleiche Problem? Vielen Dank.

Hilfreichster Kommentar

Lösung, die ich diesem Kommentar entnommen habe https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

  1. füge build-extras.gradle in dein Projektstammverzeichnis ein
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. Fügen Sie diesen Hook-Code in Ihre scripts/copy_build_extra.js ein
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. Hook in config.xml innerhalb der Android-Plattform konfigurieren
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. Installieren Sie die Plattform neu, um den Hook zu aktivieren
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

Alle 59 Kommentare

kämpfe schon seit drei tagen mit dem gleichen problem

Hallo @SandroMoretti ,

Ich habe den ganzen Tag mit diesem Problem gekämpft... Mein Projekt kann auch nicht auf Cordova 8 aktualisiert werden, also habe ich mich sogar entschieden, auf Ionic 4 zu portieren (es wurde mit Ionic 3 gemacht). Also, mit Cordova 8 und Ionic 4 bin ich nach vielen Fehlern am selben Punkt angekommen ... Der Fehler, den Sie gepostet haben, bezieht sich auf Android 28 und der Grund dafür ist, dass diese Bibliothek 'com.google. firebase:firebase-X :+' als Abhängigkeit und gestern hat Firebase eine Breaking-Release- FB vom 17. Juni veröffentlicht, die die Verwendung von Android 28 erzwingt ... .

Jede Hilfe wäre dankbar, danke!

Hier gilt das gleiche. Ich denke, es liegt daran, dass das Plugin von com.google.firebase:firebase-auth:+ abhängt, das gerade aktualisiert wurde:

https://developers.google.com/android/guides/releases

Unterstützung für API <28 . eingestellt

Gleiches Problem auch! Ich kann nicht mehr auf Android bauen.

Ich habe das gleiche Problem, jetzt kann ich die App nicht kompilieren und erhalte diese Fehlermeldung:

:app:processDebugResources
C:\Users\mmzep\.gradle\caches\transforms-1\files-1.1\core-1.0.0.aar\73b4a83ab5e76f20c84a66b1c8444d08\res\values\values.xml:133:5-70: AAPT: error: resource android:attr/fontVariationSettings not found.

C:\Users\mmzep\.gradle\caches\transforms-1\files-1.1\core-1.0.0.aar\73b4a83ab5e76f20c84a66b1c8444d08\res\values\values.xml:133:5-70: AAPT: error: resource android:attr/ttcIndex not found.

C:\Users\mmzep\Desktop\mario\Seven\SevenPassengerApp\platforms\android\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:95: error: resource android:attr/fontVariationSettings not found.
C:\Users\mmzep\Desktop\mario\Seven\SevenPassengerApp\platforms\android\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:95: error: resource android:attr/ttcIndex not found.
error: failed linking references.

Failed to execute aapt

com.android.ide.common.process.ProcessException: Failed to execute aapt

        at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
        at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
        at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
        at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

Ich habe eine wirklich knappe Frist und das macht mein Projekt kaputt, da es vollständig auf Firebase basiert.

sieht so aus, als hätte mir dieses Rezept geholfen https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

Selbes Problem hier. Ich habe versucht, alle Abhängigkeiten mit den Anforderungen unter https://firebase.google.com/support/release-notes/android#20180523 und Cordova android auf 8.0.0 zu aktualisieren, jedoch ohne Erfolg. Wenn ich cordova-plugin-firebase entferne, funktioniert es. Hier bekomme ich den Fehler:

Dependency failing: com.google.android.gms:play-services-tagmanager-api:15.0.2 -> com.google.android.gms:play-services-m
  easurement-base@[15.0.2], but play-services-measurement-base version was 15.0.4.

  The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
  ifact with the issue.
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.firebase:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]

Kann also nicht mit Firebase bauen.

Heute morgen schwitze ich schon, als ich sah, wie der Gradle neue Maven-Dateien herunterlud, und zu meinen Erwartungen ging alles richtig los!

Hier gilt das gleiche. irgendeine lösung bitte

Lösung, die ich diesem Kommentar entnommen habe https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

  1. füge build-extras.gradle in dein Projektstammverzeichnis ein
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. Fügen Sie diesen Hook-Code in Ihre scripts/copy_build_extra.js ein
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. Hook in config.xml innerhalb der Android-Plattform konfigurieren
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. Installieren Sie die Plattform neu, um den Hook zu aktivieren
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

Dies ist die beste Lösung mit weniger "Hacks": https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503135862 (erfordert cordova-android@8)

Danke @igorkurochka , funktioniert wirklich wieder.

PS: Ich verwende Cordova 6.5 und Android 7.1.4, muss also nicht auf Android 8 aktualisieren, wie dann gesagt wurde.

@SandroMoretti i guess gut, wenn Sie aktualisieren können, es zu tun .. dieses Plugin verursachen Kopfschmerzen mehr erzeugen, da im April eine Gabel des Plug - in verwenden, ein Build - Problem zu lösen, ich wurde mit cordova-android @ 7 , scheint einig Bibliothek, die von diesem Plugin abhängig ist, unterstützt keine API < 28 mehr, daher ist es gut, cordova-android@8 zu verwenden , das API 28 verwendet ...

@dann95 , ich weiß. Ich habe versucht zu aktualisieren. Ich weiß nicht warum, aber ich kann mein Cordova nicht aktualisieren.

Npm installiere einfach Cordova 6.5 hier. Vielleicht ist mein veraltetes System (ubuntu 14).
Eines Tages werde ich meinen Tag reservieren, um mein Betriebssystem zu aktualisieren, dann aktualisiere ich Cordova und die Android-Plattform.
Dankeschön.

Wenn Ihre Cordova-Cli global installiert ist, müssen Sie sie global entfernen. "-g" xD

@SandroMoretti i guess gut, wenn Sie aktualisieren können, es zu tun .. dieses Plugin verursachen Kopfschmerzen mehr erzeugen, da im April eine Gabel des Plug - in verwenden, ein Build - Problem zu lösen, ich wurde mit cordova-android @ 7 , scheint einig Bibliothek, die von diesem Plugin abhängig ist, unterstützt keine API < 28 mehr, daher ist es gut, cordova-android@8 zu verwenden , das API 28 verwendet ...

Vorher war das Verzeichnis cordova-plugin-firebase 93,9 MB, jetzt 1,30 MB.
Vorher wurde cordova-plugin-cocoapod-support nicht installiert, jetzt ist es das.

Auch bei dir?

@pegasx
Cocoapod-Support ist bei mir nicht installiert.

@pegasx
Cocoapod-Support ist bei mir nicht installiert.

Sie haben die Lösung von dpa99c leider nicht installiert. Die Frage ist also für @dann95.

Vorher war das Verzeichnis cordova-plugin-firebase 93,9 MB, jetzt 1,30 MB.
Vorher wurde cordova-plugin-cocoapod-support nicht installiert, jetzt ist es das.

Auch bei dir?

image

Cocoapod muss für "swift" sein, es wurde auch in meinem Linux installiert, werde untersuchen warum

über die größe, idk, was die größe vorher war, aber es scheint zu funktionieren.

Diese Lösung hat für mich funktioniert, aber ich musste ein neues Projekt erstellen und alle meine Dateien in dieses neue Projekt kopieren, da die Verwendung der Schritte im Link mehr Probleme mit dem vorhandenen Repository machte ...

Danke @igorkurochka , funktioniert wieder.

@igorkurochka
Danke für deine Korrektur. Bei mir funktioniert es auch. Nach meinem Verständnis handelt es sich bei der folgenden Liste um die Abhängigkeiten des Firbase-Plugins. Sollten diese nicht vom Plugin selbst definiert werden? Das Hinzufügen dieser zum Android-Projekt mithilfe eines externen Cordova-Hooks sieht wie eine Problemumgehung, aber keine Lösung aus. Besteht die Möglichkeit, einen Pull-Request zu erstellen, um die genauen Versionen der im Master-Repository definierten Abhängigkeiten zu erhalten? Vielen Dank.

```
def AbhängigkeitsMap = [
"com.google. firebase:firebase-core ": "16.0.8",
"com.google. firebase :firebase
"com.google. firebase:firebase-messaging ": "17.5.0",
"com.google. firebase:firebase-config ": "16.4.0",
"com.google. firebase:firebase-perf ": "16.2.4",
"com.google.android. gms:play-services-tagmanager ": "16.0.8",
"com.google.firebase :firebase-auth ": "16.2.0"
]

@SandroMoretti
Es stimmt, dass

Ich schlage vor, dieses Thema erneut zu öffnen.

Lösung, die ich diesem Kommentar entnommen habe #1081 (Kommentar)

  1. füge build-extras.gradle in dein Projektstammverzeichnis ein
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. Fügen Sie diesen Hook-Code in Ihre scripts/copy_build_extra.js ein
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. Hook in config.xml innerhalb der Android-Plattform konfigurieren
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. Installieren Sie die Plattform neu, um den Hook zu aktivieren
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

Hallo @igorkurochka , ich ?
platform/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin. java:9 : Fehler: Symbol kann nicht gefunden werden
import android.support.v4.app.NotificationManagerCompat;

@pankajPizone hast du den Gradle-Cache gelöscht?

rm -rf ~/.gradle/

@dann95 aus dem Android-Ordner?

das "~" bedeutet dein Zuhause, also wird es so etwas löschen wie

/home/myusername/.gradle/

OK @dann95 ich versuche es

@dann95 ist immer noch das gleiche

Gut.
Wieder öffnen.
Danke @uifox

Dan, über mein Cordova-Cli wurde ich global entfernt und global neu installiert.
Ist wie gesagt, nach Neuinstallation 6.5 behalten.

Vielen Dank.

@SandroMoretti hast du eine Lösung gefunden?
Ich stehe vor diesem Problem
firebase/FirebasePluginMessagingService. java:11 : Fehler: Symbol kann nicht gefunden werden
import android.support.v4.app.NotificationCompat;

@SandroMoretti vielleicht die Knotenversion aktualisieren? Versuchen Sie es mit nvm, um einfach zwischen Knotenversionen wechseln zu können.

@pankajPizone kannst du deine config.xml mit allen Plugins anzeigen?

@dann95 hier ist das Plugin in config.xml

<plugin name="cordova-plugin-statusbar" spec="^2.4.2" />
    <plugin name="cordova-plugin-splashscreen" spec="^5.0.2" />
    <plugin name="cordova-plugin-ionic-webview" spec="^2.4.0">
        <variable name="ANDROID_SUPPORT_ANNOTATIONS_VERSION" value="27.+" />
    </plugin>
    <plugin name="cordova-plugin-ionic-keyboard" spec="^2.1.3" />
    <plugin name="cordova-plugin-firebase" spec="^2.0.5" />
    <plugin name="cordova-plugin-facebook4" spec="^4.2.1">
        <variable name="APP_ID" value="xxxxxx" />
        <variable name="APP_NAME" value="x x" />
        <variable name="FACEBOOK_ANDROID_SDK_VERSION" value="4.38.1" />
        <variable name="FACEBOOK_HYBRID_APP_EVENTS" value="false" />
    </plugin>
    <plugin name="cordova-plugin-nativegeocoder" spec="^3.2.0" />
    <plugin name="cordova-plugin-geolocation" spec="^4.0.1">
        <variable name="GEOLOCATION_USAGE_DESCRIPTION" value="To locate you" />
    </plugin>
    <plugin name="cordova-plugin-appavailability" spec="^0.4.2" />
    <plugin name="cordova-plugin-media" spec="^5.0.2" />
    <plugin name="cordova-plugin-music-controls" spec="^2.2.0" />
    <plugin name="cordova-plugin-contacts" spec="^3.0.1" />
    <plugin name="cordova-plugin-applemusic" spec="^1.3.3" />
    <plugin name="cordova-plugin-apple-music" spec="^0.2.5" />
    <plugin name="cordova-plugin-whitelist" spec="^1.3.3" />
    <plugin name="com.telerik.plugins.nativepagetransitions" spec="^0.6.5" />
    <plugin name="cordova-plugin-applemusic" spec="^1.3.3" />
    <plugin name="cordova-plugin-apple-music" spec="^0.2.5" />
    <plugin name="cordova-plugin-add-swift-support" spec="1.7.2" />
    <allow-navigation href="http://192.168.1.120:8100" sessionid="8e9a7c7b" />
    <plugin name="com.telerik.plugins.nativepagetransitions" spec="0.6.5" />
  <plugin name="cordova-plugin-googleplus" spec="7.0.0">
        <variable name="REVERSED_CLIENT_ID" value="com.googleusercontent.apps.xxxxxxx" />
        <variable name="WEB_APPLICATION_CLIENT_ID" value="xxxxx-xxxxxxx.apps.googleusercontent.com" />
        <variable name="PLAY_SERVICES_VERSION" value="11.8.0" />
    </plugin>
    <plugin name="cordova-plugin-device" spec="../../cordova-plugin-device" />
    <plugin name="uk.co.workingedge.phonegap.plugin.launchnavigator" spec="5.0.4">
        <variable name="GOOGLE_API_KEY_FOR_ANDROID" value="xxxxx" />
        <variable name="OKHTTP_VERSION" value="3.12.0" />
    </plugin>
    <plugin name="cordova-plugin-customurlscheme" spec="4.3.0">
        <variable name="URL_SCHEME" value="spotifyapp" />
        <variable name="ANDROID_SCHEME" value=" " />
        <variable name="ANDROID_HOST" value=" " />
        <variable name="ANDROID_PATHPREFIX" value="/" />
    </plugin>
    <plugin name="cordova-spotify-oauth" spec="0.1.11" />
    <plugin name="cordova-spotify" spec="0.5.8" />
    <plugin name="cordova-plugin-geofence" spec="0.7.0" />
    <engine name="ios" spec="4.5.5" />
    <engine name="android" spec="8.0.0" />

@dann95 ist es hilfreich, das Problem zu finden?

@pankajPizone Ich habe keine Ahnung warum, hast du versucht, die Plattform zu entfernen und wieder hinzuzufügen?

@dann95 Ich habe es

Ich habe dieses Problem mit zwei Plugins behoben

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

@pankajPizone Ich benutze diese beiden Plugins auch, aber ich habe meine Cordova-Version aktualisiert, das ist der Grund, sie zu verwenden ...

Ich habe immer noch Probleme mit diesem Update:

  • Was schief gelaufen ist:
    Die Abhängigkeiten der Aufgabe ': app:compileDebugJavaWithJavac ' konnten nicht ermittelt werden.

    Es konnten nicht alle Aufgabenabhängigkeiten für die Konfiguration ': app:debugCompileClasspath ' aufgelöst werden.
    Es konnte keine Version gefunden werden, die mit Androidx übereinstimmt. Legacy: Legacy-Support-v4 :27.+.
    Nicht übereinstimmende Versionen:

    • 1.0.0
    • 1.0.0-rc02
    • 1.0.0-rc01
    • 1.0.0-beta01
    • 1.0.0-alpha3

      • 1 mehr

        Benötigt von:

        Projekt: App

  • Versuchen:
    Führen Sie mit der Option --stacktrace aus, um den Stacktrace abzurufen. Führen Sie mit der Option --info oder --debug aus, um mehr Protokollausgaben zu erhalten. Führen Sie mit --scan aus, um vollständige Einblicke zu erhalten.

  • Weitere Hilfe erhalten Sie unter https://help.gradle.org

BAUEN FEHLGESCHLAGEN in 58s
C:UsersAdminDesktopOMNICARomnicarplatformsandroidgradlew: Befehl fehlgeschlagen mit Exitcode 1 Fehlerausgabe:
FAILURE: Build ist mit einer Ausnahme fehlgeschlagen.

  • Was schief gelaufen ist:
    Die Abhängigkeiten der Aufgabe ':app:compileDebugJavaWithJavac' konnten nicht ermittelt werden.
    > Es konnten nicht alle Aufgabenabhängigkeiten für die Konfiguration ':app:debugCompileClasspath' aufgelöst werden.
    > Es konnte keine Version gefunden werden, die mit androidx übereinstimmt. Legacy: Legacy-Support-v4 :27.+.
    Nicht übereinstimmende Versionen:

    • 1.0.0

    • 1.0.0-rc02

    • 1.0.0-rc01

    • 1.0.0-beta01

    • 1.0.0-alpha3



      • 1 mehr


        Benötigt von:


        Projekt: App



Es sieht so aus, als wären die Abhängigkeiten in build.gradle richtig, wenn ich eine Plattform hinzufüge, aber wenn ich "cordova compilieren" ausführe, werden meine Abhängigkeiten wieder in die falschen umgewandelt.

Cordova-Plugin ls
Cordova-Stoff-Plugin 1.1.14-dev "cordova-Stoff-Plugin"
cordova-plugin-android-permissions 1.0.0 "Berechtigungen"
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.0.2 "cordova-plugin-androidx-adapter"
cordova-plugin-kamera 4.0.3 "Kamera"
cordova-plugin-cocoapod-supportx 1.6.1 "Cordova CocoaPods-Abhängigkeitsunterstützung"
cordova-plugin-crop 0.3.1 "CropPlugin"
cordova-plugin-device 1.1.7 "Gerät"
Cordova-Plugin-Datei 6.0.1 "Datei"
cordova-plugin-filechooser 1.2.0 "Dateiauswahl"
Cordova-Plugin-Dateipfad 1.5.5 "cordova-Plugin-Dateipfad"
cordova-plugin-firebasex 2.0.6 "Google Firebase-Plug-in"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-googlemaps 2.6.3-20190614-1928 "cordova-plugin-googlemaps"
cordova-plugin-ionic-tastatur 2.1.3 "cordova-plugin-ionic-tastatur"
cordova-plugin-ionic-webview 2.5.0 "cordova-plugin-ionic-webview"
cordova-plugin-screen-orientation 3.0.1 "Bildschirmausrichtung"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusleiste 2.4.2 "Statusleiste"
Cordova-Plugin-Whitelist 1.3.3 "Whitelist"
cordova-sqlite-storage 3.2.0 "Cordova sqlite-Speicher-Plugin - Cordova-sqlite-Speicher-Plugin-Version"
es6-promise-plugin 4.2.2 "Versprechen"
info.protonet.imageresizer 0.1.1 "Image Resizer"
onesignal-cordova-plugin 2.4.7 "OneSignal Push-Benachrichtigungen"

Ich habe das Problem auch für error: cannot find symbol class NotificationManagerCompat . Ich würde gerne eine PR sehen, um das zu beheben. Ich bin derzeit von der Wizpanda-Gabel abgezweigt.

Ich habe dieses Problem mit zwei Plugins behoben

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

Meine wird auch mit dieser Lösung erfolgreich erstellt, aber es ist ein Fehler, der meine App unbrauchbar macht. Ist so, als wären die Plugins nicht zugänglich, ich habe sie jedoch korrekt hinzugefügt. Tatsächlich wirft adb logcat:
AndroidProtocolHandler: Unable to open asset URL: file:///android_asset/www/cordova_plugins.js
Aber ich bin mir ziemlich sicher, dass ich das Projekt richtig erstellt habe. Vollständig verloren.

@AurumLinux Sie sollten versuchen, Ihre App Schritt für Schritt neu zu diesem Kommentar ...
Ich war auch in Fehlern versunken, als ich versuchte, die Plugins einfach über mein bestehendes altes Projekt zu installieren.

Das Problem war, dass ich das cordova-plugin-admobpro-firebase-Plugin anstelle des cordova-plugin-admobpro hinzufügte. Jetzt funktioniert es OK.

cordova-plugin-firebase -> src -> android -> build.gradle Zeilennummer 20 ändern com.google. firebase:firebase-auth :+ zu com.google. firebase:firebase -auth :16.2.1

es funktioniert gut mit:

ionisches Cordova-Plugin Cordova-Plugin-androidx hinzufügen
ionisches Cordova-Plugin Cordova-Plugin-Androidx-Adapter hinzufügen

es funktioniert gut mit:

ionisches Cordova-Plugin Cordova-Plugin-androidx hinzufügen
ionisches Cordova-Plugin Cordova-Plugin-Androidx-Adapter hinzufügen

@fvadouko welches Android benutzt du? 7,1 oder 8,0 ? irgendwelche anderen Compat-Bibliotheken oder Fixes?

@AurumLinux Sie sollten versuchen, Ihre App Schritt für Schritt neu zu diesem Kommentar ...
Ich war auch in Fehlern versunken, als ich versuchte, die Plugins einfach über mein bestehendes altes Projekt zu installieren.

Ich kämpfe jetzt seit ein paar Tagen mit diesem Bug. als ich vom verlinkten Kommentar auf die Gabel umgeschaltet habe, hat alles funktioniert

Lösung, die ich diesem Kommentar entnommen habe #1081 (Kommentar)

  1. füge build-extras.gradle in dein Projektstammverzeichnis ein
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. Fügen Sie diesen Hook-Code in Ihre scripts/copy_build_extra.js ein
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. Hook in config.xml innerhalb der Android-Plattform konfigurieren
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. Installieren Sie die Plattform neu, um den Hook zu aktivieren
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

TOP

stehe vor dem gleichen problem, brauche hilfe
https://github.com/arnesson/cordova-plugin-firebase/issues/1089

Danke @igorkurochka Es funktioniert. Ich hatte damit zu kämpfen.

ich habe das problem
FirebasePlugin.java:365: error: cannot find symbol

Danke an @igorkurochka. Bei meinem Projekt hat es funktioniert.

@igorkurochka hat auch hier funktioniert danke

Lösung, die ich diesem Kommentar entnommen habe #1081 (Kommentar)

1. put `build-extras.gradle` in your project root
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
1. put this hook code in your scripts/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
1. configure hook in config.xml inside android platform
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
1. reinstall platform to activate the hook
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

Lief wie am Schnürchen :). Fantastische Lösung.

Lösung, die ich diesem Kommentar entnommen habe #1081 (Kommentar)

  1. füge build-extras.gradle in dein Projektstammverzeichnis ein
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. Fügen Sie diesen Hook-Code in Ihre scripts/copy_build_extra.js ein
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. Hook in config.xml innerhalb der Android-Plattform konfigurieren
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. Installieren Sie die Plattform neu, um den Hook zu aktivieren
cordova platform rm android
cordova platform add android

Hat bei mir funktioniert, die Hoffnung wird auch für dich tun

Hallo zusammen, nach einer Weile habe ich das Problem mit dem Problem "Ungültiger Schlüssel: null" gelöst. Es kam jedoch eine neue Fehlermeldung:

* What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
The library com.google.android.gms:play-services-analytics-impl is being requested by various other libraries at [[16.0.8,16.0.8], [17.0.0,17.0.0]], but resolves to 17.0.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

Wenn ich 3 verschiedene Bibliotheken (play-services-analytics-impl, play-services-analytics und play-services-tagmanager-v4-impl) auf 16.0.8 downgrade, um dieses Problem zu lösen, bekomme ich die Meldung " Crashlytics gefunden an ungültiger API-Schlüssel: null." wieder. Offensichtlich erhalte ich die gleiche Meldung, wenn ich "com.google.android. gms:play-services-tagmanager " auf 17.0.0 aktualisiere

Irgendeine Hilfe?

Hier ist ein Teil meiner config.xml
<platform name="android"> <allow-intent href="market:*" /> <hook src="hooks/android_build_extra.js" type="after_prepare" /> </platform> <platform name="ios"> <allow-intent href="itms:*" /> <allow-intent href="itms-apps:*" /> </platform> <platform name="android"> <preference name="android-minSdkVersion" value="19" /> <preference name="android-installLocation" value="auto" /> <preference name="disallowOverscroll" value="true" /> </platform> <platform name="ios"> </platform> <plugin name="cordova-plugin-device" spec="^2.0.2" /> <plugin name="cordova-plugin-globalization" spec="1.11.0" /> <plugin name="cordova-plugin-google-analytics" spec="1.8.6" /> <plugin name="cordova-plugin-inappbrowser" spec="3.0.0" /> <plugin name="cordova-plugin-splashscreen" spec="5.0.3" /> <plugin name="cordova-plugin-statusbar" spec="2.4.3" /> <plugin name="cordova-plugin-whitelist" spec="1.3.4" /> <plugin name="cordova-plugin-network-information" spec="2.0.2" /> <plugin name="com.lampa.startapp" spec="6.1.6" /> <plugin name="cordova-plugin-firebase" spec="2.0.5" /> <plugin name="cordova-android-play-services-gradle-release" spec="^4.0.0"> <variable name="PLAY_SERVICES_VERSION" value="11.0.+" /> </plugin> <plugin name="cordova-android-firebase-gradle-release" spec="^4.0.0"> <variable name="FIREBASE_VERSION" value="11.0.+" /> </plugin> <plugin name="cordova-android-support-gradle-release" spec="3.0.1"> <variable name="ANDROID_SUPPORT_VERSION" value="26.+" /> </plugin>

Irgendeine Hilfe dazu?

Vielen Dank,

Sergi

Ich habe dieses Problem mit zwei Plugins behoben

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

vielen Dank Alter!!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen