I have an asyncTask Class which is called whenever the user taps a "Send" button from an AppCompatActivity. In the doInBackground method of my AsyncTask, I translate a string into 30 languages using Google Translate API. The problem is, it takes some time for each string to be translated into each language. I feel like it would be a better approach to run all of these functions at the same time by multithreading. 
Each time a try and catch is its own set of instructions to translate a string into 1 language. This approach is too slow. 
Here is my doInBackground Function:
 @Override
protected Void doInBackground(Void... voids) {
    translate = TranslateOptions.newBuilder().setApiKey("GOOGLE_API_KEY").build().getService();
     /*ENGLISH TO ARABIC*/     
    try {
                Translation translation =
                        translate.translate(
                                MY_STRING,
                                Translate.TranslateOption.sourceLanguage("en"),
                                Translate.TranslateOption.targetLanguage("ar"));
                parseObject.put("data0", translation.getTranslatedText());
            } catch (Exception e) {
                parseObject.put("data0", MY_STRING + " " + mContext.getString(R.string.translationfailed));
            }
      /*English to Chinese*/
 try {
                Translation
                        translation =
                        translate.translate(
                                MY_STRING,
                                Translate.TranslateOption.sourceLanguage("en"),
                                Translate.TranslateOption.targetLanguage("zh-CN"));
                parseObject.put("data1", translation.getTranslatedText());
            } catch (Exception e) {
                parseObject.put("data1", MY_STRING + " " + mContext.getString(R.string.translationfailed));
            }
  /*28 More languages run...*/
 /*Then, Save Data into server*/
  parseObject.saveinBackground();
    return null;
}
 
     
     
    