title: Duplicate classes error after adding dialogflow dependency to my android app
body: <p>I get duplicate classes error after adding dialogflow dependency to my app which uses firebase.</p>
  
  <p>tried downgrading both dialogflow and firebase dependencies, also tried </p>
  
  <pre><code>"implementation('com.google.cloud:google-cloud-dialogflow:0.98.0-alpha'){
       exclude group: 'com.google.api.grpc'
       exclude group: 'com.google.protobuf'
  }"
  </code></pre>
  
  <p>to exclude the duplicated classes. None of which worked!</p>
  
  <pre><code>dependencies {
      implementation fileTree(dir: 'libs', include: ['*.jar'])
      implementation 'androidx.appcompat:appcompat:1.0.2'
      implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
      testImplementation 'junit:junit:4.12'
      androidTestImplementation 'androidx.test:runner:1.2.0'
      androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
      implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.3'
      implementation 'com.android.support:multidex:1.0.3'
      implementation 'com.google.android.material:material:1.0.0'
      implementation 'com.jakewharton:butterknife:10.1.0'
      annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'
      implementation 'com.google.firebase:firebase-core:17.0.0'
      implementation 'com.google.firebase:firebase-auth:18.0.0'
      implementation 'com.google.firebase:firebase-database:18.0.0'
      implementation 'com.google.firebase:firebase-firestore:20.1.0'
      implementation "com.github.VaibhavLakhera:Circular-Progress-View:0.1.2"
      implementation 'com.github.CardinalNow:Android-CircleProgressIndicator:v0.2'
      implementation 'ai.api:sdk:2.0.7@aar'
      implementation 'ai.api:libai:1.6.12'
      implementation 'com.google.cloud:google-cloud-dialogflow:0.98.0-alpha'
      implementation 'io.grpc:grpc-okhttp:1.21.0'
      implementation 'com.google.apis:google-api-services-oauth2:v1-rev145-1.25.0'
      implementation 'com.google.apis:google-api-services-dialogflow:v2-rev80-1.25.0'
      implementation "com.andkulikov:transitionseverywhere:2.0.0-beta01"
  }
  
  apply plugin: 'com.google.gms.google-services'
  apply plugin: 'com.jakewharton.butterknife'
  </code></pre>
  
  <p>Error:</p>
  
  <blockquote>
    <p>Duplicate class com.google.api.Advice found in modules classes.jar
    (com.google.firebase:protolite-well-known-types:17.0.0) and
    proto-google-common-protos-1.16.0.jar
    (com.google.api.grpc:proto-google-common-protos:1.16.0) 
    Blockquote</p>
  </blockquote>
  
  <p>I was able to exclude the duplicate classes with the following method:</p>
  
  <pre><code>android {
      ... 
      configurations { 
        implementation.exclude module:'proto-google-common-protos'
        implementation.exclude module:'protolite-well-known-types'
        implementation.exclude module:'guava' 
        implementation.exclude module:'protobuf-lite' 
      }
   }
  </code></pre>
  
  <p>But it caused the app to crash at launch producing this error:</p>
  
  <blockquote>
    <p>java.lang.ClassNotFoundException: Didn't find class "com.google.common.base.Preconditions"</p>
  </blockquote>