title: Manifest merger failed : Attribute application@appComponentFactory updating Firebase libraries
body: <p>I am trying to add firebase in my project but when I implement <code>'com.google.firebase:firebase-messaging:19.0.0'</code> and <code>'com.google.firebase:firebase-core:17.0.0'</code>.</p>
  
  <p><code>build.gradle</code>(here is the error)</p>
  
  <pre><code>apply plugin: 'com.android.application'
  apply plugin: 'com.google.gms.google-services'
  
  android {
   compileSdkVersion 28
   defaultConfig {
      applicationId "com.example.user.mikripoli"
      minSdkVersion 15
      targetSdkVersion 28
      multiDexEnabled true
      versionCode 1
      versionName "1.0"
      testInstrumentationRunner 
   "android.support.test.runner.AndroidJUnitRunner"
   }
   buildTypes {
      release {
          minifyEnabled false
          proguardFiles getDefaultProguardFile('proguard-android.txt'), 
   'proguard-rules.pro'
      }
   }
  
   dexOptions {
      javaMaxHeapSize "2g"
   }
  }
  
  dependencies {
   implementation 'com.roughike:bottom-bar:2.0'
   implementation 'com.android.support:support-v4:28.0.0'
   implementation 'com.android.support:exifinterface:28.0.0'
   implementation 'com.android.support:animated-vector-drawable:28.0.0'
   implementation 'com.flaviofaria:kenburnsview:1.0.7'
   implementation fileTree(include: ['*.jar'], dir: 'libs')
   implementation 'com.android.support:appcompat-v7:28.0.0'
   implementation 'com.android.support.constraint:constraint-layout:1.1.3'
   implementation 'com.android.support:design:28.0.0'
   implementation 'com.github.chrisbanes:PhotoView:2.1.4'
   implementation 'com.google.firebase:firebase-messaging:19.0.0'
   implementation 'com.google.firebase:firebase-core:17.0.0'
   testImplementation 'junit:junit:4.12'
   androidTestImplementation 'com.android.support.test:runner:1.0.2'
   androidTestImplementation 'com.android.support.test.espresso:espresso- 
    core:3.0.2'
   implementation 'com.android.support:recyclerview-v7:28.0.0'
   implementation 'com.android.support:cardview-v7:28.0.0'
   implementation "com.google.android.gms:play-services-location:17.0.0"
   implementation 'com.google.android.gms:play-services-maps:17.0.0'
   implementation 'com.google.android.gms:play-services-base:17.0.0'
   implementation 'com.github.ahmedshaban1:EasySlider:1.0.0'
   implementation 'com.liangfeizc:SlidePageIndicator:1.1.0@aar'
   implementation 'me.relex:circleindicator:1.2.2@aar'
   implementation 'com.github.bumptech.glide:glide:4.8.0'
   annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
  </code></pre>
  
  <p>}</p>
  
  <p>the other gradle file:</p>
  
  <pre><code>buildscript {
  
   repositories {
      google()
      jcenter()
   }
   dependencies {
      classpath 'com.android.tools.build:gradle:3.4.1'
      classpath 'com.google.gms:google-services:4.2.0'
  
  
      // NOTE: Do not place your application dependencies here; they belong
      // in the individual module build.gradle files
    }
   }
  
    allprojects {
      repositories {
       google()
       mavenCentral()
       jcenter()
       maven {
          url "https://maven.google.com"
          }
       maven { url "https://jitpack.io" }
     }
    }
  
    task clean(type: Delete) {
     delete rootProject.buildDir
    }
  </code></pre>
  
  <p>The error that show about <code>com.android.support:support-v4:28.0.0</code>:</p>
  
  <blockquote>
    <p>Dependencies using groupId com.android.support and androidx.* can not
    be combined but found
    IdeMavenCoordinates{myGroupId='com.android.support',
    myArtifactId='cardview-v7', myVersion='28.0.0', myPacking='aar',
    myClassifier='null'} and
    IdeMavenCoordinates{myGroupId='androidx.coordinatorlayout',
    myArtifactId='coordinatorlayout', myVersion='1.0.0', myPacking='aar',
    myClassifier='null'} incompatible dependencies</p>
    
    <p>Inspection info:There are some combinations of libraries, or tools and
    libraries, that are incompatible, or can lead to bugs. One such
    incompatibility is compiling with a version of the Android support
    libraries that is not the latest version (or in particular, a version
    lower than your targetSdkVersion).</p>
  </blockquote>
  
  <p><strong>Also</strong> when I build the apk it shows this error:</p>
  
  <blockquote>
    <p>Manifest merger failed : Attribute application@appComponentFactory
    value=(android.support.v4.app.CoreComponentFactory) from
    [com.android.support:support-compat:28.0.0]
    AndroidManifest.xml:22:18-91  is also present at
    [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86
    value=(androidx.core.app.CoreComponentFactory).   Suggestion: add
    'tools:replace="android:appComponentFactory"' to  element
    at AndroidManifest.xml:13:5-354:19 to override.</p>
    
    <p>adding tools:replace="android:appComponentFactory" doesn't work though</p>
  </blockquote>