1

I'm trying to send emails without any attachments using GmailApi and get error 400 only in release build. Response message:

 {
      "error": {
        "code": 400,
        "message": "'raw' RFC822 payload message string or uploading message via /upload/* URL required",
        "errors": [
          {
            "message": "'raw' RFC822 payload message string or uploading message via /upload/* URL required",
            "domain": "global",
            "reason": "invalidArgument"
          }
        ],
        "status": "INVALID_ARGUMENT"
      }
    }

I'm trying to implement sending emails by making a request, but I also have a 400 error

I follow an example from Google, only changed authentication before sending

fun sendMessage(userId: String?,
                    emailContent: MimeMessage?): Message? {
   val service = createGmailService()
   var message: Message? = createMessageWithEmail(emailContent!!)
   
   message = service.users().messages().send(userId, message).execute()
    
   println("Message id: " + message?.id)
   println(message?.toPrettyString())
   return message
}



private fun createGmailService(): Gmail {
   val credential = createCredentials()
   return Gmail.Builder(httpTransport, jsonFactory, credential).setApplicationName("my app").build()
}
    
private fun createCredentials(): GoogleCredential {
   val account = GoogleSignIn.getLastSignedInAccount(context)
   val accessToken = GoogleAuthUtil.getToken(context, account?.account, "oauth2:profile email")

   return GoogleCredential.Builder()
           .setTransport(httpTransport)
           .setJsonFactory(jsonFactory)
           .setClientSecrets("11267771....googleusercontent.com", "-YJlT....uxEcdkc")
           .build()
           .setAccessToken(accessToken)
           .setRefreshToken("")
}

0 Answers0