一种基于安卓系统的快速文本翻译方法与流程

文档序号:12550334阅读:586来源:国知局
一种基于安卓系统的快速文本翻译方法与流程

本发明涉及一种基于安卓系统的快速文本翻译方法,属于Android应用开发的技术领域。



背景技术:

随着Android系统的不断优化和发展,安卓手机越来越被大众所接受。基于Android系统的应用更是不断地推陈出新,层出不穷。人们在日常生活中使用这些应用软件进行社交、读书、看新闻、娱乐等等已经演变成一种生活习惯。与此同时,人们在使用这些软件进行聊天、看报或者阅读时难免会遇到不懂的英语词汇或者英语句子,这时人们通常会使用一些翻译软件进行翻译,常见的步骤就是,复制单词,然后切换到桌面,打开翻译软件,进行翻译,翻译完成后,退回到之前的软件,这种传统的翻译方法操作起来往往比较繁琐,而且就在这些繁琐的过程中,我们阅读很容易被打断,进而影响效率,大大降低了用户体验。



技术实现要素:

针对现有技术的不足,本发明提供一种基于安卓系统的快速文本翻译方法。

发明概述:

通过本发明所述文本翻译方法,用户在使用手机或者其他安卓系统的移动终端设备遇到不懂的外语词汇或者句子时,不再需要进行繁琐的操作,只需将待查的词汇或者句子进行复制,便能弹出一个消息提示框并显示翻译后的内容。

本发明的技术方案为:

一种基于安卓系统的快速文本翻译方法,包括步骤如下:

1)通过SharedPreferences保存用户设置的目标语言;创建AppSetting单例类作为配置类,由AppSetting单例类决定用户设置的目标语言;目标语言是指用户希望翻译成的语言种类。

2)主界面显示用户设置的目标语言;主界面MainActivity继承自PreferenceActivity进行信息配置和管理;设置setting.xml文件作为主界面的布局文件,在setting.xml文件中添加ListPreference显示不同目标语言的选项供用户选择,用户选定目标语言后,目标语言保存在AppSetting单例类及系统配置文件中;

3)通过第三方翻译平台的API实现文本的翻译;通过翻译Api,并且按照接入文档的要求,实现文本的翻译;通过第三方翻译平台的API实现文本的翻译,具体的实现类包括,自定义的TransApi类、HttpGet类和MD5类;HttpGet类是实现向第三方翻译平台进行请求的类,MD5类是进行md5加密的类,TransApi类是进行翻译的核心类;

4)使用后台服务进行文件的翻译操作;创建TranslateService类继承自Service,作为一个后台服务运行;在主界面MainActivity中首先获取到SharedPreferences中的目标语言,开启TranslateService服务,在该服务中监听剪切板内的内容,一旦剪切板中内容改变,便通过TransApi类翻译剪切板的内容,翻译成功后将翻译结果显示给用户。

优选的,所述步骤3)中,TransApi类通过HttpGet类向第三方翻译平台发送翻译请求,并将响应的结果解析成翻译结果字符串,并且在TransApi类中创建OnTranslatedListener接口,该接口中定义OnTranslateResult()抽象方法;当获取到第三方翻译平台的响应并解析成翻译结果后,TransApi通过Handler消息机制将翻译结果传递到主线程中,并且调用OnTranslateResult()方法对翻译结果进行处理。

进一步优选的,所述步骤4)使用后台服务进行文件的翻译操作的具体步骤为,TranslateService类实现OnPrimaryClipChangedListener和OnTranslatedListener两个监听器接口并重写onPrimaryClipChanged()方法和OnTranslateResult()方法;当用户将待翻译的文本进行复制时,该文本被保存在剪切板中,当剪切板中的文本发生变化时,OnPrimaryClipChangedListener监听剪切板中文本的变化,并回调onPrimaryClipChanged()方法,onPrimaryClipChanged()方法对剪切板中的内容进行翻译,当翻译成功后,回调OnTranslateResult()方法将翻译结果显示给用户。其中,onPrimaryClipChanged()方法和OnTranslateResult()方法是OnPrimaryClipChangedListener和OnTranslatedListener两个监听器接口里的抽象方法;OnPrimaryClipChangedListener监听器接口是Android系统API自带的接口,而OnTranslatedListener监听器接口是在TransApi类中定义的。

进一步优选的,所述步骤4)中,在onPrimaryClipChanged()方法中通过TransApi类对剪切板中的内容进行翻译,当翻译成功后,回调OnTranslateResult()方法,OnTranslateResult()方法通过Toast类将翻译结果显示给用户。

优选的,所述第三方翻译平台的API为百度翻译API。

本发明的有益效果为:

1.本发明所述基于安卓系统的快速文本翻译方法,不再需要进行繁琐的操作,只需将待查的词汇或者句子进行复制,便能弹出一个消息提示框并显示翻译后的内容,节省了不必要的操作,方便快捷,大大提高了效率和用户体验;

2.本发明所述基于安卓系统的快速文本翻译方法,除了英文翻译成中文外,还能灵活快捷的实现不同语言之间的相互翻译。

附图说明

图1为本发明所述基于安卓系统的快速文本翻译方法的流程图;

图2为本发明所述基于安卓系统的快速文本翻译方法的主界面;

图3为本发明所述基于安卓系统的快速文本翻译方法选择目标语言的界面;

图4a-图4c为利用本发明所述基于安卓系统的快速文本翻译方法将整段英语文本翻译成汉语的界面;

图5a-图5b为利用本发明所述基于安卓系统的快速文本翻译方法进行单个文本进行翻译的界面;

图6a-图6d为利用本发明所述基于安卓系统的快速文本翻译方法将汉语文本翻译成英语的界面。

具体实施方式

下面结合实施例和说明书附图对本发明做进一步说明,但不限于此。

实施例1

如图1-3所示。

一种基于安卓系统的快速文本翻译方法,包括步骤如下:

1)通过SharedPreferences保存用户设置的目标语言;创建AppSetting单例类作为配置类,由AppSetting单例类决定用户设置的目标语言;目标语言是指用户希望翻译成的语言种类。

2)主界面显示用户设置的目标语言;主界面MainActivity继承自PreferenceActivity进行信息配置和管理;设置setting.xml文件作为主界面的布局文件,在setting.xml文件中添加ListPreference显示不同目标语言的选项供用户选择,用户选定目标语言后,目标语言保存在AppSetting单例类及系统配置文件中;

3)通过第三方翻译平台的API实现文本的翻译;通过翻译Api,并且按照接入文档的要求,实现文本的翻译;通过第三方翻译平台的API实现文本的翻译,具体的实现类包括,自定义的TransApi类、HttpGet类和MD5类;HttpGet类是实现向第三方翻译平台进行请求的类,MD5类是进行md5加密的类,TransApi类是进行翻译的核心类;

4)使用后台服务进行文件的翻译操作;创建TranslateService类继承自Service,作为一个后台服务运行;在主界面MainActivity中首先获取到SharedPreferences中的目标语言,开启TranslateService服务,在该服务中监听剪切板内的内容,一旦剪切板中内容改变,便通过TransApi类翻译剪切板的内容,翻译成功后通过消息提示框将翻译结果显示给用户。

实施例2

如实施例1所述的基于安卓系统的快速文本翻译方法,所不同的是,所述步骤3)中,TransApi类通过HttpGet类向第三方翻译平台发送翻译请求,并将响应的结果解析成翻译结果字符串,并且在TransApi类中创建OnTranslatedListener接口,该接口中定义OnTranslateResult()抽象方法;当获取到第三方翻译平台的响应并解析成翻译结果后,TransApi通过Handler消息机制将翻译结果传递到主线程中,并且调用OnTranslateResult()方法对翻译结果进行处理。

实施例3

如实施例2所述的基于安卓系统的快速文本翻译方法,所不同的是,所述步骤4)使用后台服务进行文件的翻译操作的具体步骤为,TranslateService类实现OnPrimaryClipChangedListener和OnTranslatedListener两个监听器接口并重写onPrimaryClipChanged()方法和OnTranslateResult()方法;当用户将待翻译的文本进行复制时,该文本被保存在剪切板中,当剪切板中的文本发生变化时,OnPrimaryClipChangedListener监听剪切板中文本的变化,并回调onPrimaryClipChanged()方法,onPrimaryClipChanged()方法对剪切板中的内容进行翻译,当翻译成功后,回调OnTranslateResult()方法将翻译结果以消息提示框的形式显示给用户。其中,onPrimaryClipChanged()方法和OnTranslateResult()方法是OnPrimaryClipChangedListener和OnTranslatedListener两个监听器接口里的抽象方法。

实施例4

如实施例3所述的基于安卓系统的快速文本翻译方法,所不同的是,所述步骤4)中,在onPrimaryClipChanged()方法中通过TransApi类对剪切板中的内容进行翻译,当翻译成功后,回调OnTranslateResult()方法,OnTranslateResult()方法通过Toast类将翻译结果显示给用户。

实施例5

如实施例1所述的基于安卓系统的快速文本翻译方法,所不同的是,所述第三方翻译平台的API为百度翻译API。

利用实施例1-5所述的基于安卓系统的快速文本翻译方法进行整段英语文本翻译成汉语的界面如图4a-图4c所示。

利用实施例1-5所述的基于安卓系统的快速文本翻译方法对单个文本进行翻译的界面如图5a-图5b所示。

利用实施例1-5所述的基于安卓系统的快速文本翻译方法将汉语文本翻译成英语的界面如图6a-图6d所示。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1