title: Moshi Json annotation does not work with proguard
body: <p>I followed <a href="https://github.com/square/moshi" rel="nofollow noreferrer">https://github.com/square/moshi</a> to add gradle dependency on moshi and proguard rules, then I write code to verify.</p>
  
  <pre><code>data class Car(
      @Json(name = "low_speed")  val lowSpeed: Int,
      @Json(name = "high_speed") val highSpeed: Int
  )
  </code></pre>
  
  <pre><code>val moshi = Moshi.Builder()
              .add(KotlinJsonAdapterFactory())
              .build()
  val jsonAdapter = moshi.adapter(Car::class.java)
  
  val json = "{\"low_speed\": 10, \"high_speed\": 20}"
  val car = jsonAdapter.fromJson(json)
  
  if (car != null) {
      Toast.makeText(this, "${car.lowSpeed}+${car.highSpeed}", Toast.LENGTH_LONG).show()
  }
  </code></pre>
  
  <p>when I run it in debug mode, it displayed "10+20", which is expected, but when I run in release mode (which has proguard enabled), I saw "0+0". </p>
  
  <p>My proguard-rules.pro file:</p>
  
  <pre><code># Retain generic type information for use by reflection by converters     and adapters.
  -keepattributes Signature
  # Retain declared checked exceptions for use by a Proxy instance.
  -keepattributes Exceptions
  
  # Common Stuff to Keep
  -keepattributes *Annotation*
  -keepattributes JavascriptInterface
  
  # OkHttp
  -dontwarn javax.annotation.**
  -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase
  -dontwarn org.codehaus.mojo.animal_sniffer.*
  -dontwarn okhttp3.internal.platform.ConscryptPlatform
  
  # okIo
  -dontwarn okio.**
  
  #moshi
  # JSR 305 annotations are for embedding nullability information.
  -keepclasseswithmembers class * {
      @com.squareup.moshi.* &lt;methods&gt;;
  }
  
  -keep @com.squareup.moshi.JsonQualifier interface *
  
  # Enum field names are used by the integrated EnumJsonAdapter.
  # values() is synthesized by the Kotlin compiler and is used by EnumJsonAdapter indirectly
  # Annotate enums with @JsonClass(generateAdapter = false) to use them with Moshi.
  -keepclassmembers @com.squareup.moshi.JsonClass class * extends java.lang.Enum {
      &lt;fields&gt;;
      **[] values();
  }
  
  #moshi-kotlin
  -keep class kotlin.reflect.jvm.internal.impl.builtins.BuiltInsLoaderImpl
  
  -keepclassmembers class kotlin.Metadata {
      public &lt;methods&gt;;
  }
  </code></pre>
  
  <p>my build.gradle dependency:</p>
  
  <pre><code>// moshi
  implementation("com.squareup.moshi:moshi:1.9.2")
  implementation("com.squareup.moshi:moshi-kotlin:1.9.2")
  
  // okhttp
  implementation "com.squareup.okhttp3:okhttp:3.10.0"
  </code></pre>
  
  <p>I suppose I am missing something with moshi and proguard, but I really don't know what it is</p>