Android调用百度翻译API实现中英智能翻译源代码Demo下载
2015-12-09 12:37:37  By: shinyuu

本Demo是一个基于Android的简单在线翻译app应用项目源码、调用了百度翻译的接口、通过直接带入字符串的方式进行翻译、可以翻译单个文字也可以翻译一段话、同时支持英文翻译成中文、其实就是中英文互相翻译的、更多相关的Api可以参考百度的开发文档、下面是效果图

android 翻译代码


onCreate中检测网络

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_fanyi);

    if (NetworkStatus.isNetworkAvailable(this)) {
        Toast.makeText(getApplicationContext(), "当前网络可用", Toast.LENGTH_LONG)
                .show();
    } else {
        Toast.makeText(getApplicationContext(), "当前网络不可用!",
                Toast.LENGTH_LONG).show();
    }
    findViews();

}


翻译核心代码

private void fanYi(final String str) {

    new AsyncTask<String, Void, String>() {
        @Override
        protected String doInBackground(String... params) {
            try {
                URL url = new URL(params[0]);
                HttpURLConnection connection = (HttpURLConnection) url
                        .openConnection();
                InputStream is = connection.getInputStream();
                InputStreamReader isr = new InputStreamReader(is, "utf-8");
                BufferedReader bf = new BufferedReader(isr);
                String line;
                StringBuffer sb = new StringBuffer();
                while ((line = bf.readLine()) != null) {
                    System.out.println(line);
                    sb.append(line);
                }
                bf.close();
                isr.close();
                is.close();
                JSONObject jsonObject = new JSONObject(sb.toString());
                JSONArray trans_result = jsonObject
                        .getJSONArray("trans_result");
                StringBuffer afterText = new StringBuffer();
                for (int i = 0; i < trans_result.length(); i  ) {
                    JSONObject jo = trans_result.optJSONObject(i);
                    afterText.append(jo.getString("dst"));
                }
                textAfter = afterText.toString();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return params[0];
        }

        @Override
        protected void onPostExecute(String result) {
            // TODO Auto-generated method stub
            tvTextAfter.setText(textAfter);
            //super.onPostExecute(result);
        }
    }.execute(str);
    
}


源代码下载链接: http://dwtedx.com/download.html?bdkey=s/1kUn5zj5 密码: 4d9f

若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+