title: SerializedName annotation doesn't seem to work in Moshi
body: <p>So I'm trying to parse a call from my server using Moshi. This is my response object.</p>
  
  <pre><code>public class TokenResponse {
      @SerializedName("accessToken")
      public String accessToken;
      public String token_type;
      public int expires_in;
      public String userName;
      public String name;
      @SerializedName(".issued")
      public String issued;
      @SerializedName(".expires")
      public String expires;
      public String Roles;
  
  }
  </code></pre>
  
  <p>This is my endpoint definition (not really important but I'll include it anyway)</p>
  
  <pre><code>public interface ServerService {
  
          @POST("/token")
          @FormUrlEncoded
          Call&lt;TokenResponse&gt; getToken(@Field("username") String username,
                                      @Field("password") String password, @Field("grant_type") String grant_type);
  
      }
  </code></pre>
  
  <p>And this is the code I'm using to call.</p>
  
  <pre><code>Retrofit retrofit = new Retrofit.Builder()
                  .baseUrl("https://xxx/")
                  .addConverterFactory(MoshiConverterFactory.create())
                  .build();
  
          ServerService service = retrofit.create(ServerService.class);
  
          Call&lt;TokenResponse&gt; call = service.getToken("admin@admin.com", "password1!", "password");
  
          call.enqueue(new Callback&lt;TokenResponse&gt;() {
              @Override
              public void onResponse(Call&lt;TokenResponse&gt; call, Response&lt;TokenResponse&gt; response) {
                  if (response.isSuccessful()) {
                      // tasks available
                      TextView tv = (TextView)findViewById(R.id.tvToken);
                      tv.setText(response.body().accessToken);
  
  
                  } else {
                      // error response, no access to resource?
                  }
              }
          });
  </code></pre>
  
  <p>In the onResponse method, my response.body() always has accessToken, issued and expires as null. I get values back for the other parameters. Using the Android Profiler, I know for certain that it's returning this as the response.</p>
  
  <pre><code>{  
     "access_token":"_xxx",
     "token_type":"bearer",
     "expires_in":1209599,
     "userName":"xxx",
     "name":"LOURDES RILEY",
     ".issued":"Tue, 19 Dec 2017 23:37:06 GMT",
     ".expires":"Tue, 02 Jan 2018 23:37:06 GMT",
     "Roles":"[\"Admin\"]"
  }
  </code></pre>
  
  <p>So what am I doing wrong? Why isn't SerializedName working?</p>