首先给出git地址
https://gitee.com/GTAlluka/ShouJiTongXunLu.git
一、课题及需求分析
1.课题:手机常用联系人通讯录
2.需求分析:
实现主要功能:从手机系统通讯录中添加常用联系人、删除联系人、拨打电话
二、设计及介绍
1.主界面
该界面显示已添加的常用联系人,包括姓名,电话。点击联系人可以跳转拨号盘,也可以直接点击拨号键拨号。同时有菜单,菜单包含管理联系人模块,还有关于制作信息的按钮。
2.管理界面
该界面先显示已存在常用联系人,点击删除按钮可以删除(只删除程序内及路,但不删除手机数据库记录)。通过右上角加号可进行联系人添加。
3.添加联系人界面
显示手机系统通讯录内容,选择所需联系人添加。
4.关于
简要介绍该程序。
三、本人负责的主要功能展示与代码分析
这个程序并没有很明确地分工,在我同学的指导下我们共同完成,但由于我对安卓开发初次接触,所以安卓相关内容较不熟悉。以下展示我所参与并有一定了解的内容。
1.程序常用联系人数据库
程序自身建立一个数据库区别于系统自带的联系人数据库,该数据库主要关键字有姓名和电话号码,采用不重复原则,避免添加重复联系人。该数据库相关内容在MiniDBHelper.java中。
2.添加常用联系人功能:
使用Cursor(类似于游标、指针)访问系统数据库,然后逐一显示全部联系人,选中所需联系人后,将其添加到程序的数据库中,可以进行多次操作,但相同联系人只会添加一次。相关内容在ContactDao.java中。
3.删除联系人功能
使用监听器,点击联系人时候,提示是否删除,若是,则从程序的数据库中删除。功能实现在ContactDao.java中
4.拨打功能
此功能我并未过多参与,不明白调用系统通讯工具的原理。同时,访问手机通讯录数据库的权限获取我也并未参与。
5.几个界面及组件
5.1 主界面 MainActivity
该界面继承Activity,用于显示常用联系人、链接其他界面的功能。使用onCreateOptionsMenu()方法创建菜单。onOptionsItemSelected()方法则对菜单进行规划,提供了三个可选项。
5.2 管理界面 ManageActivity
该界面继承Activity,用于管理常用联系人(删除、添加)。右上角+符号功能为添加联系人,点击后将跳转PickActivity,实现添加功能。点击删除符号,则会提示是否删除。
5.3 添加联系人界面 PickActivity
该界面继承Activity,用于添加联系人。显示手机通讯录所有联系人,点击后提示是否添加。添加后,停留在该界面,菜单exit返回管理界面。
5.3 关于界面 AboutActivity
该界面显示一些开发信息。
5.4 联系人适配器 ContactAdapter
对显示的联系人进行适配。所有界面需要显示联系人时,都需要ArrayAdapter
四、程序存在问题及可改进方向
存在问题
时间仓促,功能简陋,用户体验不好
1.无搜索功能
2.无发短信功能
3.无法手动填写添加联系人
4.无法修改联系人信息
5.用户体验较差,界面操作等待优化
改进方向
1.实现搜索功能,进一步实现模糊搜索
2.实现发送短信功能。
3.实现填写信息添加联系人以及修改信息等功能。