《基于Ophone SDK15的英文电子词典的设计与开发.docx》由会员分享,可在线阅读,更多相关《基于Ophone SDK15的英文电子词典的设计与开发.docx(17页珍藏版)》请在第一文库网上搜索。
1、基于OPhone SDK1.5的英文电子词典的实现OPhone 平台开发,2009-12-07 11:06:42标签:OPhone SDK1.5英文词典英文词典是手机中经常使用的应用。因此,在本文将结合中国移动最新的OPhone SDK1.5来讨论如何实现一个OPhone版的英文词典。实现英文词典的方法很多。在本文使用了 SQUte数据库来保存英文单词信息。系统通过SQLite数据库中保存的单词信息来查找到与指定英文对应的中文信息。当然,实现这样一个英文词典需要解决一系列技术问题。例如,如何将保存英文单词信息的数据库文件随程序(apk文件)一起发布;发布后如何打开数据库;如何在输入前几个字母后
2、,在AutoCompleteTextView组件提示列表中显示以所输入字符串开头的所有单词。在本章将逐渐给出这些问题的详细答案。关于本文实现的英文电子词典的完整代码请读者参本文提供的源代码。电子词典的程序结构本文实现的电子词典可以从数据库中查找单词的中文解释。程序的界面由一个AutoCompleteTextView和一个Button组成,这两个组件在main.xml文件中定义,代码如下:view plaincopy to clipboardprint?11. 2. 5. 8. I 10. 在系统中只有一个Main类,负责处理电子词典的所有功能。在该类的onCreate方法中装载了 main.x
3、ml文件。 如何建立SQLite数据库在本例中提供了一个dictionary.db数据库文件,该数据库中包含了一个t_words表,在这个表中保存了英文单词的相关信息。但这个数据库是事先建立的,在本节将介绍一下如何在PC上建立这个数据库文件及t_words表。SQUte数据库是一个开源免费的数据库,支持多种数据库接口。Ophone系统正是使用了这种数据库作为其优秀的数据存储方案建立SQLite数据库的工具很多,例如,SQHte官方提供了一个控制台程序,可以建立并维护SQLite数据库工具,读者可以从如下的地址下载这个控制令程序:http:/www.sqlite.org/download.htm
4、l目前这个程序的最新版本是362,读者可以卜载Sqlite-3_6_20.zip文件,解压后只有一个sqlite3.exe文件,启动这个文件,即可进入控制台界面。如果想建立一个数据库,只需要输入如下命令即可:view plaincopy to clipboardprint?11. sqlite3.exe dictionary.db这时控制台程序还不会立即生成dictionary.db文件,直到输入一条与数据库相关的命令后,才会在当前目录生成一个dictionary.db,例如,输入如下的SQL语句建立一个表:view plaincopy to clipboardprint?11. create
5、 table tablet (| 2.id integer primarykey,| 3.age int,4 .name text5 .);虽然sqlite3.exe可以很容易地生成并管理数据库,但毕竟是控制台程序,使用起来很不方便。因此,在这里作者介绍一种可视化的管理SQLite数据库的工具:SQLite Expert Professionalo这种工具有些类似于SQL Server的企业管理器,可以可视化地建立数据库、表、视图等数据库组件。SQLite ExpertProfessional 的主界面。读者可以从如下的地址下载SQLite Expert ProfessionaL下面我们来使用
6、SQLite Expert Professional建立一个dictionary.db数据库,并建立一个t_words表,结果如图5所示。通过图5中的Design标签页可以修改t_words表的结构,例如,添加、删除字段等。从图5所示的表结构可以看出,t_words有两个字段:english和Chinese,分别用来保存英文单词和中文解释信息。最后就需要我们向t_words表中添加等查找的单词信息了。至于这些信息,读者可以在网上查找或自己输入,在本例中只提供了大学英语4级(CET4)的大纲词汇。由于本文的目的只是介绍如何编写一个基于OPhone SDK1.5的电子词典,因此,关于t_words
7、表中实际的英文单词信息读者可以根据自己的需要添加。如何处理电子词典中的数据库文件在上一节已经介绍了如何建立本例所使用的dictionary.db数据库和t_words表,那么在建立完dictionary.db数据库文件,并添加相应的数据后,需要将这个文件放在Eclipse匚程的resraw目录中与apk文件一起发布。但在这里有一个问题。就是这个数据库文件被放在了 resraw目录中同apk文件一起发布。那么如何在安装apk后打开并使用这个数据库文件呢?OPhone SDK不能直接打开resraw目录中的数据库文件,不过我们可以通过将这个文件复制到手机内存或SD卡上来访问。复制的方法也很简单,就
8、是在程序第一次启动时判断要复制的目标路径是否存在该数据库文件,如果不存在该数据库文件,那先复制这个文件,然后再打开数据库文件。复制数据库文件可以通过getResources().openRawResource方法获得resraw目录中资源的Inputstream对象,然后将该Inputstream对象中的数据写入其他的目录中相应文件中。打开数据库可以使用 SQLiteDatabase.openOrCreateDatabase 方法来打开 SQLite 数据库文件。openOrCreateDatabase方法可以打开任意目录下的数据库文件。复制和打开数据库文件的工作由openDatabase方法
9、来完成,这个方法的完整代码如下:view plaincopy to clipboardprint?1. 2. 5. 8. |10. 在系统中只有一个Main类,负责处理电子词典的所有功能。在该类的onCreate方法中装载了 main.xml文件,装载后的效果如图1所示。在界面上方的文本框中可以输入要查找的单词,如图2所示。 如何建立SQLite数据库在本例中提供了一个dictionary.db数据库文件,该数据库中包含了一个t_words表,在这个表中保存了英文单词的相关信息。但这个数据库是事先建立的,在本节将介绍一下如何在PC上建立这个数据库文件及t_words表。SQLite数据库是一个
10、开源免费的数据库,支持多种数据库接口。Ophone系统正是使用了这种数据库作为其优秀的数据存储方案。建立SQUte数据库的工具很多,例如,SQIite官方提供了一个控制台程序,可以建立并维护SQLite数据库工具,读者可以从如下的地址下教这个控制台程序:http:/www.sqlite.org/download.html目前这个程序的最新版本是362,读者可以下载Sqlite-3_6_20.zip文件,解压后只有一个sqhte3.exe文件,启动这个文件,即可进入控制台界面。如图3所示。如果想建立一个数据库,只需要输入如下命令即可:view plaincopy to clipboardprin
11、t?11. sqlite3.exe dictionary.db这时控制台程序还不会立即生成dictionary.db文件,直到输入一条与数据库相关的命令后,才会在当前目录生成一个dictionary.db,例如,输入如下的SQL语句建立一个表:view plaincopy to clipboardprint?11. create table tablet (| 2.id integer primarykey,|3.age int,4 .name text5 .);虽然sqlite3.exe可以很容易地生成并管理数据库,但毕竟是控制台程序,使用起来很不方便。因此,在这里作者介绍一种可视化的管理SQLite数据库的工具:SQLite Expert Professionalo这种工具有些类似于SQL Server的企业管理器,可以可视化地建立数据库、表、视图等数据库组件。SQLite ExpertProfessional的主界面如图4所示。读者可以从如下的地址下载SQLite Expert Professionalo下面我们来使用SQUte Expert Professional建立个dictionary.db数据库,并建立个t words