title: Enabling R8 requires explicit rule to keep all app package
body: <p>We had explicitly disabled R8 using directive </p>
  
  <pre><code>android.enableR8=false.
  </code></pre>
  
  <p>But when I take that directive out of my gradle.properties I am finding that R8 is removing lot of application specific classes.</p>
  
  <p>Only way I am able to compile and run the app successfully is by including following statement in my config/proguard/proguard-project.txt</p>
  
  <pre><code>-keep class com.myapppackage.** { *; }
  </code></pre>
  
  <p>My gradle.properties looks like this:</p>
  
  <pre><code>kotlin.incremental.usePreciseJavaTracking=true
  android.useAndroidX=true
  android.enableJetifier=true
  android.uniquePackageNames=true
  </code></pre>
  
  <p>In google's document ( <a href="https://developer.android.com/studio/build/shrink-code" rel="nofollow noreferrer">https://developer.android.com/studio/build/shrink-code</a> ) there is no mention that I need to explicitly have keep directive.</p>