capacitor: bug: gradle add dependency to some lib project instead of app

Bug Report

Capacitor Version

💊   Capacitor Doctor  💊 

Latest Dependencies:

  @capacitor/cli: 2.4.0
  @capacitor/core: 2.4.0
  @capacitor/android: 2.4.0
  @capacitor/electron: 2.4.0
  @capacitor/ios: 2.4.0

Installed Dependencies:

  @capacitor/ios not installed
  @capacitor/cli 2.4.0
  @capacitor/core 2.4.0
  @capacitor/android 2.4.0
  @capacitor/electron not installed

[success] Android looking great! 👌

Platform(s)

Android

Current Behavior

yarn add cordova-plugin-firebasex npx cap sync android npx cap open android -> return error

Applying the Firebase Crashlytics plugin to a library project is unsupported.
It should only be applied to the application module of your project to enable automatic upload of obfuscation mapping files for your application.

Expected Behavior

npm install cordova-plugin-firebasex npx cap sync android build app -> sucessful build

Code Reproduction

GitHub

Other Technical Details

npx cap open android output: error in android studio

Additional Context

About this issue

  • Original URL
  • State: open
  • Created 4 years ago
  • Reactions: 9
  • Comments: 37 (6 by maintainers)

Most upvoted comments

I successfully managed to fix it doing the following

  1. go to file node_modules/cordova-plugin-firebasex/src/android/build.gradle and comment out line 10 and from line 20 to 36 image

  2. go to android/build.gradle and add classpath 'com.google.firebase:firebase-crashlytics-gradle:2.1.1' in the dependencies image

  3. go to android/app/capacitor.build.gradle and add the commented code from firebase plugin and change apply plugin to apply plugin: 'com.google.firebase.crashlytics' image

  4. copy google-services.json file to android/app image

  5. add accent color by creating color.xml file in android/app/main/res/values/ image

  6. Build the project

Source: https://firebase.google.com/docs/crashlytics/get-started?platform=android

Is there any way to just make my code compile? I need to complete the migration. If you can suggest just a workaround I’ll be glad… at least for a while. I’ve migrated to the capacitor because the File API doesn’t work as expected.

That’s the bad of taking a serious decision like that and depend on such a thing that is supposed to has a community!!

I don’t know for how long people will suffer from such plugins and breaking changes!

Unlucky those who have a broken app right now. I don’t know what to say!

I’ve faced the same problem. I’m migrating an app from Ionic 3 to Ionic 5. So I did the following cordova plugin remove cordova-plugin-firebasex npx cap sync In Android Studio:

  1. Menu: Build -> Clean Project

In this step Gradle synced and I had no errors. So I did: cordova plugin add cordova-plugin-firebasex npx cap sync So i had: Executing tasks: [clean] in project /Users/fsmalaquias/projects/capacitor/vistorias-saphyr/android AGPBI: {"kind":"warning","text":"Using flatDirs should be avoided because it doesn't support any meta-data formats.\nCurrently detected usages:\n- repository flatDir used in: project ':app', project ':capacitor-cordova-android-plugins'","sources":[{}]} AGPBI: {"kind":"warning","text":"Please remove usages of jcenter()` Maven repository from your build scripts and migrate your build to other Maven repositories.\nThis repository is deprecated and it will be shut down in the future.\nSee http://developer.android.com/r/tools/jcenter-end-of-service for more information.\nCurrently detected usages in: root project ‘android’, project ‘:app’, project ‘:capacitor-android’, …",“sources”:[{}]}

Task :clean UP-TO-DATE Task :app:clean UP-TO-DATE Task :capacitor-android:clean UP-TO-DATE Task :capacitor-cordova-android-plugins:clean UP-TO-DATE

BUILD SUCCESSFUL in 252ms 4 actionable tasks: 4 up-to-date Build Analyzer results available` With some warnings but it 's ok

Same problem after integrating FB login

Count me in for a solution to this. I love the firebaseX plugin, as I’ve worked with it on V3 apps, but on V5 with Capacitor is not working at all.

Another one that points to this problem, performing an installation with the latest versions and following the documentation step by step. Without adding any additional code, just adding FirebaseX (Capacitor) or Firebase or Firebase-authentication, this error appears.

@ArturoBurela May be, but why capacitor add dependencies to some library project instead of application?

I have no idea, I faced the same issue last week and found these two issues on Github.

I’ve faced the same problem. I’m migrating an app from Ionic 3 to Ionic 5. So I did the following

cordova plugin remove cordova-plugin-firebasex npx cap sync

In Android Studio:

  1. Menu: Build -> Clean Project

In this step Gradle synced and I had no errors.

So I did:

cordova plugin add cordova-plugin-firebasex npx cap sync

So i had:

`Executing tasks: [clean] in project /Users/fsmalaquias/projects/capacitor/vistorias-saphyr/android

AGPBI: {“kind”:“warning”,“text”:“Using flatDirs should be avoided because it doesn’t support any meta-data formats.\nCurrently detected usages:\n- repository flatDir used in: project ‘:app’, project ‘:capacitor-cordova-android-plugins’”,“sources”:[{}]} AGPBI: {“kind”:“warning”,“text”:“Please remove usages of jcenter() Maven repository from your build scripts and migrate your build to other Maven repositories.\nThis repository is deprecated and it will be shut down in the future.\nSee http://developer.android.com/r/tools/jcenter-end-of-service for more information.\nCurrently detected usages in: root project ‘android’, project ‘:app’, project ‘:capacitor-android’, …”,“sources”:[{}]}

Task :clean UP-TO-DATE Task :app:clean UP-TO-DATE Task :capacitor-android:clean UP-TO-DATE Task :capacitor-cordova-android-plugins:clean UP-TO-DATE

BUILD SUCCESSFUL in 252ms 4 actionable tasks: 4 up-to-date

Build Analyzer results available`

With some warnings but it 's ok

Same problem here.

Failed to apply plugin [class ‘com.google.firebase.crashlytics.buildtools.gradle.CrashlyticsPlugin’]

Yes I do have the same issue and I initially ran out from cordova because of errors like thay, and I found capacitor has problems with Firebase too.

Why is there isn’t staright forward official plugin for firebase that works well without any issues!

Same issue here too, starting from ionic blank app using Capacitor@latest and firebasex cordova plugin@latest+firebasex ionic native@latest …

$> ionic info

Ionic:

   Ionic CLI                     : 6.11.8 (/Users/jorisbertomeu/.nvm/versions/node/v14.10.0/lib/node_modules/@ionic/cli)
   Ionic Framework               : @ionic/angular 5.3.3
   @angular-devkit/build-angular : 0.1000.8
   @angular-devkit/schematics    : 10.0.8
   @angular/cli                  : 10.0.8
   @ionic/angular-toolkit        : 2.3.3

Capacitor:

   Capacitor CLI   : 2.4.1
   @capacitor/core : 2.4.1

Utility:

   cordova-res : not installed
   native-run  : not installed

System:

   NodeJS : v14.10.0 (/Users/jorisbertomeu/.nvm/versions/node/v14.10.0/bin/node)
   npm    : 6.14.8
   OS     : macOS Big Sur

Same problem here.

Failed to apply plugin [class ‘com.google.firebase.crashlytics.buildtools.gradle.CrashlyticsPlugin’]

Same issue for me trying move from Cordova to Capacitor. No problems in Cordova.