使用Google翻译API传递文字并获取翻译后的文字

时间:2018-11-09 14:02:50

标签: java android functional-programming google-translation-api

package com.example.speakplease;

import android.os.AsyncTask;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.google.cloud.translate.Translate;
import com.google.cloud.translate.TranslateOptions;
import com.google.cloud.translate.Translation;

public class SplashActivity extends AppCompatActivity {
    public static final String API_KEY = "xyz";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash);
    final TextView textView = (TextView) findViewById(R.id.textView);
    final Handler textViewHandler = new Handler();
    new AsyncTask<Void, Void, Void>() {
        @Override
        protected Void doInBackground(Void... params) {
            TranslateOptions options = TranslateOptions.newBuilder().setApiKey(API_KEY).build();
            Translate translate = options.getService();
            final Translation translation = translate.translate("Hello World", Translate.TranslateOption.targetLanguage("de"));
            textViewHandler.post(new Runnable() {
                @Override
                public void run() {
                    if (textView != null) {
                        textView.setText(translation.getTranslatedText());
                    }
                }
            });
            return null;
        }
    }.execute();
  }
 }

我正在使用Google Translation API将一种语言的文本转换为另一种语言。在我的应用程序中,我希望用户使用内置麦克风以他/她的母语讲话,并将其转换为书面文本,然后将其存储到ArrayList中。现在我想调用一个函数,该函数将ArrayList中的文本作为参数发送给该函数,该函数将返回翻译后的文本。我尝试的上述代码正在工作,而这只是检查我的设置是否正常工作。但是我无法使用函数调用来实现。

0 个答案:

没有答案