Traducción de texto mediante elAWS Mobile SDK for Android - Amazon Translate

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Traducción de texto mediante elAWS Mobile SDK for Android

Puede utilizar Amazon Translate en una aplicación Android para traducir texto.

Para configurar el ejemplo

  1. Configure AWS Mobile SDK for Android. Para obtener instrucciones, consulteAndroid: Opciones de configuración para el SDKen laGuía para desarrolladores de AWS Mobile

  2. Cree un usuario de IAM con los permisos mínimos necesarios para ejecutar este ejemplo. Para obtener información acerca de cómo crear un usuario de IAM, consulte Creación de un usuario de IAM en su cuenta de AWS en la Guía del usuario de AWS Identity and Access Management. Para conocer las políticas de permisos necesarias, consulte Políticas de Amazon Translate basadas en identidades. Después de crear el usuario, descargue las credenciales o registre la clave de acceso y la clave de acceso secreta.

  3. Cree un nuevo proyecto con Android Studio.

  4. Agregue lo siguiente a la sección de dependencias del archivo build.gradle.

    dependencies { implementation 'com.amazonaws:aws-android-sdk-translate:2.6.20' }
  5. Añada los siguientes permisos al archivo AndroidManifest.xml.

    <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  6. Copie el código fuente en su proyecto.

  7. Cambie la clave de acceso y la clave de acceso secreta en claves que registró en el paso 1.

Code

Utilice el siguiente código para crear el ejemplo.

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()); } }); } }