Amazon Translate
개발자 안내서

Android용 AWS Mobile SDK를 사용하여 텍스트 번역

Android 애플리케이션에서 Amazon Translate를 사용하여 텍스트를 번역할 수 있습니다.

예제를 구성하려면

  1. Android용 AWS Mobile SDK를 설정합니다. 자세한 내용은 AWS 모바일 개발자 안내서Android: SDK에 대한 옵션 설정을 참조하십시오.

  2. 이 예제를 실행하는 데 필요한 최소한의 권한을 갖는 IAM 사용자를 만듭니다. IAM 사용자 생성에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서AWS 계정에서 IAM 사용자 생성을 참조하십시오. 필요한 권한 정책의 경우 Amazon Translate에 대한 자격 증명 기반 정책(IAM 정책) 사용을 참조하십시오. 사용자를 만들거나, 자격 증명을 다운로드하거나, 액세스 키 및 보안 액세스 키를 기록할 수 있습니다.

  3. Android Studio를 사용하여 새 프로젝트를 생성합니다.

  4. build.gradle 파일의 종속성 섹션에 다음을 추가합니다.

    dependencies { implementation 'com.amazonaws:aws-android-sdk-translate:2.6.20' }
  5. AndroidManifest.xml 파일에 다음 권한을 추가합니다.

    <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  6. 소스 코드를 XCode 프로젝트로 복사합니다.

  7. 액세스 키 값과 보안 액세스 키를, 1단계에서 기록한 키로 변경합니다.

코드

다음 코드를 실행하여 예제를 생성합니다.

package com.amazonaws.amazontranslatetester; import android.app.Activity; import android.util.Log; import com.amazonaws.auth.AWSCredentials; import com.amazonaws.handlers.AsyncHandler; import com.amazonaws.services.translate.AmazonTranslateAsyncClient; import com.amazonaws.services.translate.model.TranslateTextRequest; import com.amazonaws.services.translate.model.TranslateTextResult; public class MainActivity extends Activity { private static final String LOG_TAG = MainActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { AWSCredentials awsCredentials = new AWSCredentials() { @Override public String getAWSAccessKeyId() { return "access key"; } @Override public String getAWSSecretKey() { return "secret key"; } }; AmazonTranslateAsyncClient translateAsyncClient = new AmazonTranslateAsyncClient(awsCredentials); TranslateTextRequest translateTextRequest = new TranslateTextRequest() .withText("Hello, world") .withSourceLanguageCode("en") .withTargetLanguageCode("es"); translateAsyncClient.translateTextAsync(translateTextRequest, new AsyncHandler<TranslateTextRequest, TranslateTextResult>() { @Override public void onError(Exception e) { Log.e(LOG_TAG, "Error occurred in translating the text: " + e.getLocalizedMessage()); } @Override public void onSuccess(TranslateTextRequest request, TranslateTextResult translateTextResult) { Log.d(LOG_TAG, "Original Text: " + request.getText()); Log.d(LOG_TAG, "Translated Text: " + translateTextResult.getTranslatedText()); } }); } }

이 페이지에서: