基于android手机通讯录的设计与实现毕业设计(7)

2019-05-18 13:21

滁州学院毕业论文

mainMenuDialog.dismiss();} });} .setNegativeButton(\取消\ .create().show();break; }

})

图5-5 显示所有、删除所有、备份功能

5.2.8数据库操作实现

为了实现联系人在数据库中的增加,删除,查找等操作,使用操作数据库的核心类android.database.sqlite.SQLiteDatabase。使用SQLiteOpenHelper的子类来完成创建、打开数据库及各种对数据库的操作。数据库的类继承函数,显示了数据库类的继承关系:

class MyDBHelper extends SQLiteOpenHelper { public MyDBHelper(Context context, String name, int version) {//公共的MyDBHelper对象 super(context, name, null, version);//继承上面的}

我在数据库中运用了openDatabase的方法来打开数据库。 public void openDatabase() { if(dbInstance == null) {

myDBHelper = new MyDBHelper(context,DB_DBNAME,VERSION); dbInstance = myDBHelper.getWritableDatabase();}

实现联系人信息插入数据库中我设置了一个新的ContentValues,通过user对象把联系人信息存储在values。

public long insert(User user) {

ContentValues values = new ContentValues();//设置一个新的容器的对象 values.put(\

values.put(\ values.put(\ values.put(\ values.put(\

values.put(\ values.put(\ values.put(\ values.put(\

27

滁州学院毕业论文

values.put(\

values.put(\储存用户相关信息

return dbInstance.insert(DB_TABLENAME, null, values);//用户插入数据表的信息}

为了解决用户菜单操作中删除联系人,我在数据库中调用delete函数在DB_TABLENAME中进行删除:

public void delete(int _id) {//删除联系人

dbInstance.delete(DB_TABLENAME,\}

当用户通过长点击对要删除的联系人进行标记,然后对标记的数据进行彻底的删除操作。我新建了一个StringBuffer,将删除联系人的id存储进去,并调用delete函数来删除StringBuffer中所有数据,具体代码如下:

public void deleteMarked(ArrayList deleteId) {//删除标记的用户信息 StringBuffer strDeleteId = new StringBuffer();//新建一个缓冲对象 strDeleteId.append(\存储要删除联系人的id for(int i=0;i

strDeleteId.append(deleteId.get(i) + \删除联系人 } else { strDeleteId.append(deleteId.get(i));}}

dbInstance.delete(DB_TABLENAME, strDeleteId.toString(), null);//在数据库中删除联系人 System.out.println(strDeleteId.toString());//显示删除后的联系人}

文件的查找操作可以通过对数据库的查找来实现,从数据库中查找到符合条件的联系人返回到list,将整合好的adapter交给listview显示出来,具体代码如下:

public ArrayList getUsers(String condition, boolean privacy) { ArrayList list = new ArrayList(); String strSelection = \

String sql = \\

\ \ Cursor cursor = dbInstance.rawQuery(sql, null); while(cursor.moveToNext()) {

HashMap item = new HashMap();

item.put(\

item.put(\cursor.getInt(cursor.getColumnIndex(\ list.add(item);//放进list里面}return list;

28

滁州学院毕业论文

6系统测试

6.1系统测试用例

系统测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析。根据功能需求和性能需求制定以下测试用例,测试用例如表6-1所示。

表6-1 测试用例

ID 1

用例描述 联系人增加功能

操作步骤

预期结果

实际结果 符合预期

1、选择联系人头像 能实现联系人增加2、输入联系人相关信息

3、跳转联系人列表界面

功能

2 联系人删除功能 1、联系人详细信息界面删除

2、通过底部菜单删除键删除

3、对联系人进行标记

4、删除全部联系人

联系人信息成功删除

符合预期

3 联系人查找功能 1、输入要查找联系人的相关信息进行查找

成功查找出符合条件的联系人

符合预期

4 通讯功能 1、联系人详细信息界面点击menu弹出通讯功能界面 2、通过对号码和邮箱的识别进行相应的操作

成功实现联系人打电话、发信息、发邮件功能

符合预期

5 通讯录底部菜单功能

1、 增加联系人 2、 查找联系人 3、 删除联系人 4、 菜单 5、 退出

功能键实现 符合预期

6 菜单功能 1、 显示全部 2、 备份SD卡 3、 删除全部

29

显示全部联系人,成功备份SD卡,成功删除全部联系人

符合预期

滁州学院毕业论文

6.2系统测试结果

6.2.1系统测试方法

测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。 开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。

集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全正确。

系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。

6.2.2 编辑联系人功能测试

联系人详细界面中有修改、删除和返回按钮,在选择修改功能后,联系人的所有信息处于可编辑状态,手机号码和固定电话则被EditView设置为只可输入数字,修改完后点击确定按键,触发确定按键点击监听事件,从而对数据库中该联系人信息进行更改,然后自动返回联系人浏览界面。在联系人列表中选择某个联系人点击查看联系人详细信息,联系人手机、办公室电话、家庭电话、职务称等一览无遗,同时在联系人详细信息界面下面会出信功能键,这时的联系人信息是不能操作的,如果想要对联系人进行修改点击修改功能键对联系信息进行修改。测试结果如图6-1编辑联系人界面。

图6-1 编辑联系人界面

6.2.3 查找联系人功能测试

如图6-2查找联系人界面,在联系人列表显示中,输入姓名或者号码对联系人进行查找,程序

30

滁州学院毕业论文

自动筛选符合条件的联系人,如果没有符合条件的联系人则不显示。

图6-2 查找联系人界面

6.2.4 删除联系人功能测试

如图6-3删除界面在系统测试中对联系人进行删除操作时,可以通过对底部菜单框中删除按键的点击,或者联系人详细信息界面中删除按键点击,出现提示框询问“是否要删除”。

图6-3 删除界面

31


基于android手机通讯录的设计与实现毕业设计(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:原发性醛固酮增多症功能诊断试验可靠性分析-第三军医大学学报

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: