作为Java大作业的项目汇报在这里
0.1Alpha 版已发布!功能尚不完善,仅供尝鲜!
注意:本项目尚在开发中!
Xebird 是一款为观鸟爱好者设计的工具app,主要功能为:
作为世界上最大的观鸟记录平台,eBird提供了相应的 Android app 便于观鸟爱好者记录旅途中见到的鸟种(eBird),深受观鸟爱好者喜爱。同时,eBird 与同样是由康奈尔大学鸟类实验室(Cornell Lab of Ornithology)设计的检索鸟类知识的 app Merlin 关联,可以便捷地查看鸟种记录。但由于服务器位于海外且依赖 Google Maps,eBird在国内很难使用,使得其在国内并未普及。
国内目前缺乏类似的 app,仅有个别微信小程序实现了类似的功能。因此试图做一款同类竞品 app,将知识检索和数据记录结合起来,且针对国内用户习惯做相应优化。
Xebird 使用 sqlite 存储记录,数据格式参考了ebird 的官方指南建议。每次观鸟记录为一个 Checklist,其中每种出现了的鸟对应一个 BirdRecord。
设计一个csv格式的观鸟存储方法。
一次完整观鸟记录流程:
- 创建 Checklist,获取当前时间、位置;
- 搜索鸟种名数据库,选定鸟种;
- 记录指定鸟种的数目及位置、地点名称,可选加上备注,写入BirdRecord;
- 循环2~4,同样鸟种多次记录时将恢复上次写入的BirdRecord,进行修改;
- 提交 Checklist 和 BirdRecord 到数据库。
暂使用一款仅在观鸟爱好者之间流传的老 app Mockingbird 的数据,但将原本存储于本地的媒体数据改为放在服务器上,显著减小安装包大小(从近 1G 到 10M 左右)。
考虑爬取ebird/wiki/xeno-canto.org 的数据加入。
- 数据层
- 本地文字数据库
- 鸟类信息
- 图片与音频链接
- 用户添加的其他信息
- 代码
- UI图片与其他
- 本地文字数据库
- 服务层
- 本地检索
- 中文支持
- 模糊搜索
- 添加信息
- 更新数据库
- 信息展示
- 图片与音频的获取与展示
- 本地检索
- 用户层
- UI
- 导航界面
- 记录界面
- 添加/删除
- 显示列表
- 检索界面
- 记录界面