android中使用异步调用google翻译接口翻译语句,并用译文替换显示到textView的原文

这篇博客介绍了如何在Android应用中实现异步调用Google翻译API来翻译文本,并将译文显示在TextView上。首先,定义了一个调用翻译的工具类`TranslateUtil`,该类使用了HttpURLConnection进行网络请求。接着,创建了一个`TranslateListener`接口用于处理翻译完成后的回调,将译文和原始语言传递给调用者。最后,在需要翻译的场景中,通过`TranslateUtil.loadTranslate`方法传入待翻译文本和监听器实例来发起翻译请求。
摘要由CSDN通过智能技术生成

1.定义调用google翻译的工具类

import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

import com.elex.chatservice.model.ConfigManager;

//提供翻译的工具类
public class TranslateUtil {

//异步加载翻译,等待调用google翻译返回译文后再加载译文
public static void loadTranslate(final String text,final TranslateListener translateListener)
{
//定义处理消息的Handler

    final Handler handler = new Handler(){  
        @Override  
        public void handleMessage(Message msg) {  
                super.handleMessage(msg);  
                Bundle data = msg.getData();  
            String translateMsg = data.getString("translateMsg");
            String originalLang = data.getString("originalLang");
            System.out.println("translateMsg:"+translateMsg+"  originalLang:"+originalLang);
            if(translateListener!=null)
            {
                translateListener.onTranslateFinish(translateMsg,originalLang);
            }

        }  
    };  
      //定义发送异步消息的线程
    Runnable runnable = new Runnable(){  
        @Override  
        public void run() {  
            String ret= translate(text);
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值