Android 程序之在线词典
利用开源的词典API,开发了一款Android的词典,采用的是Dict.cn的Open API接口, 基本的原理: 发送单词请求到dict.cn上. http://dict.cn/ws.php?q=word word表示你要查询的单词, 比如要查询hello的话,像Dict.cn发送请求http://dict.cn/ws.php?q=hello , 则dict.cn的服务器将
利用开源的词典API,开发了一款Android的词典,采用的是Dict.cn的Open API接口,
基本的原理: 发送单词请求到dict.cn上. http://dict.cn/ws.php?q=word
word表示你要查询的单词, 比如要查询hello的话,像Dict.cn发送请求http://dict.cn/ws.php?q=hello , 则dict.cn的服务器将
返回一段xml,里面有注释,例句,音标等。 所以,开发起来相当简单。
这里我采用了GAE(Google Application Engine)的服务器, 客户端的请求通过我的GAE服务器,然后再向Dict.cn发出请求。
具体的实现,看代码就行了.
主要难点是:
1. android对xml的解析
2. Layout排布
3. 重力感应事件
不过值得借鉴的思想是,通过向云端发送请求, 得到数据显示到客户机的思想, 应该在以后大行其道。所以这个应用,还是比较
有指导意义的。
顺便唱衰一下b/s端的应用, 觉得Brower很难搞定所有的客户端需求, 向开心农场之类的游戏, 大量的资源文件需要下载到本地,
还能称为纯粹意义上的B/S应用吗?
源代码请到下面下载:
http://download.csdn.net/source/1716487
后期发展成一个开源的项目, 主要实现以下功能:
1. 支持在线搜索, 并保存到数据 库,这部分涉及到SQLite的知识, 可以从中窥探到嵌入式数据库 的一个小面。
2. 保存到数据库后,单词不需要从网络 下载 ,从而可以支持离线查询。 并可以回顾查询单词。并支持单词记忆等级划分,因为查询的单词,大多是用户感兴趣的单词,工具可以学习 用户的记忆模型,从而帮助单词记忆。
3. 支持外部工具的导入,可以通过工具将xml格式的单词,导入数据库,这样根本不需要在线搜索单词。 同时也支持单词从工具中导出。
目前第一个功能 已经实现,第二个功能部分实现。 第三个功能正在筹划。
第二个版本的代码下载地址:
http://download.csdn.net/source/2288196
基本功能演示:
输入, 按“查询”按钮查询, 出现“请稍后的查询框”表示在线查询
在线查询的的结果
点击"收藏" 则该此条被收藏起来,下次查询的时候, 直接从本地查询, 这样可以离线了!
回顾工具可以看到目前保存的单词, 仅仅显示十条结果.
输入框中,可以输入,从而查到需要的单词,点击单词则可以看到单词的含义.
弹出框能弹出单词的含义.
后续将实现收藏的单词归类的.
从而形成一个自己需要的自定义词典。 最快捷的找到最需要的单词.
补充: 如果道上的朋友想往APP方面发展, 请关注一下两个方向:
1. Server端的建立, 务必要有自己的Sever端, 很多独立的个人APP, 利用第三方的API建立了自己的应用, 最后当这些第三方推行自己的APP时, 个人应用直接被扼杀。 另外, 当服务端的API更新, 将带来灾难性的后果。
2. 智能终端Client技术, Android的学习成本非常小, 仅仅四个组件需要学习, 很快会被后来的竞争者追上, 所以建议往底层走一点, 如果你还在关注Android平台, 将部分精力放在DVM/JNI上面. 再者, 关注Linux这样的大平台。 这样才能保持竞争力。
转载出自这里:
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)