Traducir 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.

Traducir texto mediante elAWS Mobile SDK for Android

Puedes usar Amazon Translate en una aplicación de Android para traducir texto.

Para configurar el ejemplo
  1. Configure AWS Mobile SDK for Android. Para obtener instrucciones, consulte Android: opciones de configuración del SDK en la Guía del desarrollador para móviles de AWS.

  2. Asegúrese de que tiene habilitados los permisos adecuados para este ejemplo. Para conocer las políticas de permisos necesarias, consulte Políticas basadas en identidades para Amazon Translate. 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()); } }); } }