title: GoogleTokenResponse.getIdToken() returns null
body: <p>Our server OAuth validation via Google has started throwing NullPointerException within GoogleTokenResponse.parseIdToken():</p>
  
  <pre><code>java.lang.NullPointerException:
  at com.google.api.client.json.webtoken.JsonWebSignature$Parser.parse(JsonWebSignature.java:462)
  at com.google.api.client.googleapis.auth.oauth2.GoogleIdToken.parse(GoogleIdToken.java:57)
  at com.google.api.client.googleapis.auth.oauth2.GoogleTokenResponse.parseIdToken(GoogleTokenResponse.java:106)
  </code></pre>
  
  <p>This is new behavior that started today. There was no change to our server code (it has worked for months). The problem occurs only with credentials from one Android device -- I have another that works fine. Refreshing the client's server access token does not solve the problem.</p>
  
  <p>The GoogleTokenResponse is being created by GoogleAuthorizationCodeTokenRequest(), that call succeeds and when I log the GoogleTokenResponse it looks valid:</p>
  
  <p>{"access_token":"ya29.mwJvM...","expires_in":3600,"token_type":"Bearer"}</p>
  
  <hr>
  
  <p>UPDATE: tested some more and found tokenResponse.getIdToken() is returning null, so I assume that's what's causing the NPE when I call parseIdToken().</p>
  
  <p>What would cause getIdToken() to return null when GoogleAuthorizationCodeTokenRequest() apparently succeeded and there is an access token?</p>