基于移动终端系统的通讯录排序方法
本文提供了一种用于对移动终端的通讯录进行排序的方法和系统。该方法所包含的功能有:获取终端的位置信息、将终端的位置信息和终端通讯录中所有电话号码的归属地进行逐一对比并且选择一个归属地和当前终端位置相匹配的通讯电话号码、将所选择的电话号码所属的联系人信息放置在通讯录的顶端。通过这种方法和系统,将会使终端用户在到达某一地点时更加方便的获取到处于同一地点的联系人的通讯方式。
图一:
描述
技术领域
本发明设计移动通信领域,尤其涉及到移动终端的通讯录排序方法和系统。
背景技术
通讯录是注入移动手机等移动终端的基本应用之一,并且它应用于存储联系人的电话号码等信息。目前,通讯录中联系人的顺序通常是以联系人姓名的首字母在字母表中的排序排列的。
这种排序方式在日常生活中并不方便。举个例子,如果移动终端用户正在出差,当用户到达目的地之后,用户搜索通讯录来寻找本地联系人的电话号码。那么根据通讯录当前的排序方式,用户可能需要花费一些时间去寻找需要联系的人的电话号码,并且如果有多个需要联系的人,那么用户将花费大量的时间去搜索电话号码。
然后,针对上面描述的情况,发现存在如下问题:如何通过联系人信息在通讯录中的排序来给移动终端用户带来更多的便利。
本文概要
本文作者提供了一种对移动终端通讯录进行排序的方法和系统,来解决如何让移动终端用户更加方便的去获取用户当前所在地联系人的通讯信息这一技术问题。
本文作者提供了一种对移动终端通讯录进行排序的方法,包括:
- 移动终端获取所属终端的位置信息;
- 移动终端将终端的位置信息和通讯录中所有电话号码的归属地进行逐一对比并且选择一个归属地和当前终端位置相匹配的通讯电话号码;
- 移动终端将所选择的电话号码所属联系人信息放置在通讯录的顶端。
移动终端获取终端的位置信息的步骤又包括:
- 移动终端通过全球定位系统(GPS)获取终端的位置信息。
或者,所述方法还包括:
当通过GPS获取到终端的位置信息之后,移动终端核对终端的位置信息是否包含在用户预设的位置信息当中。如果终端的位置信息包含在用户预设的位置信息当中,则将终端的位置信息与通讯录中的所有电话号码的归属地逐一进行比较。
移动终端将所选择的电话号码所属联系人信息放置在通讯录的顶端这一步骤包括:
- 当选择电话号码之后,移动终端发送一个顶部放置查询信息给用户;
- 在接收到用户发送过来的顶部放置确认信息后,移动终端将所选择的电话号码所属联系人的信息放置在通讯录的顶端。
本文作者还提供了一种对移动终端通讯录排序的系统,包括位置信息模块,电话号码查询模块和排序模块,其中,位置信息模块用于获取终端的位置信息并且将获取到的终端的位置信息发送给电话号码查询模块;
电话号码查询模块用于将位置信息模块发送过来的终端位置信息和通讯录中的电话号码所属的位置信息进行逐一的比较,选择一个所属地和终端位置信息相匹配的联系电话号码,并且将所选择的电话号码发送给排序模块;
排序模块用于将选择的电话号码所属的联系人信息放置在通讯录的顶端。
位置查询模块用于使用以下方式获取终端的位置信息:
- 通过全球定位系统(GPS)获取终端的位置信息。
- 位置信息模块还用于在通过GPS获取终端的位置信息后,检查终端的位置信息是否包括在用户预设的位置信息中,当终端的位置信息包括在用户预设的位置信息中时,将终端的位置信息发送给电话号码查询模块。
- 排序模块用于通过以下方式将所选择的电话号码所属的联系人信息放置在通讯录的顶部:
在接收到所选择的电话号码之后,想用户发送顶部放置查询消息,并且在接收到用户的顶部放置确认消息之后,将所选择的电话号码所属的联系人的信息放置在通讯录的顶部。
利用上述技术方案,从通讯录中选择和终端在同一地点的联系人,并且将所选联系人的信息放置在通讯录的顶部,从而方便终端用户更方便的获取到位于用户所到达位置的联系人的通讯手段。
附图说明:
图一是根据本实例画出的对移动终端通讯录进行排序的方法流程图。
图二是根据本实例画出的对移动终端通讯录进行排序的系统流程图。
本文的优选实施方案
本文的实施方案将会结合附图来进行详细的描述。需要说明的是:本文中的实施方案和实施方案的特征可以随机组合。
图一是根据本实例画出的对移动终端通讯录进行排序的方法流程图。如图一所示:该方法包括以下步骤。
在步骤一中,移动终端获取终端的位置信息。
移动终端可以通过全球定位系统(GPS)获取终端的位置信息。
当用户想要根据自己的实际需要定制需要放置在通讯录顶部的联系人信息时,用户可以预设位置信息; 在通过GPS获取终端的位置信息之后,移动终端检查终端的位置信息是否包括在用户预设的位置信息中,如果终端的位置信息包括在用户预设的位置信息中,则继续执行步骤二。
在步骤二中,移动终端将终端的位置信息与通讯录中的相应电话号码的归属地逐一进行比较,并选择位于终端的地理位置的电话号码。
在步骤三中,移动终端将所选择的电话号码所属的联系人的信息放置在地址簿的顶部。
在选择电话号码之后,移动终端可以向用户发送顶部放置查询消息; 并且在从用户接收到置顶确认消息之后,移动终端可以将所选择的电话号码所属的联系人的信息放置在地址簿的顶部。
上述获取终端的位置信息,使用终端的位置信息选择电话号码并将所选择的电话号码置于顶部的方法也可以应用于对电话号码的呼叫记录和短消息记录进行排序。
图二是根据本实例画出的对移动终端通讯录进行排序的系统构造图。
该系统包括位置信息模块20,电话号码查询模块22和排序模块24,其中,位置信息模块20用于获取终端的位置信息,并将获取到的终端的位置信息发送给电话号码查询模块22;
位置信息模块20,用于通过全球定位系统GPS获取所述终端的位置信息;
位置信息模块20还用于在通过GPS获取终端的位置信息后,检查终端的位置信息是否包括在用户预先设置的位置信息中,当终端的位置信息包括在用户预先设置的位置信息,将该终端的位置信息发送给电话号码查询模块22;
电话号码查询模块22用于将位置信息模块发送的终端的位置信息与地址簿中对应的电话号码所属的位置逐一进行比较,选择属于匹配的地址的对应电话号码所述终端的位置信息,并将所选择的电话号码发送给所述排序模块;
排序模块24用于将所选择的电话的联系人的信息号码放置于通讯录的顶部;
排序模块24用于通过以下方式将所选择的电话号码所属的联系人的信息放置在地址簿的顶部:在接收到所选择的电话号码之后,向用户发送排名查询消息;并且在从所述用户接收到顶部放置确认消息之后,将所选择的电话号码所属的联系人的信息放置在所述地址簿的顶部。
图一
图二
Android SQLite数据库和ContentProvider教程
3. SQLite架构
3.1 包
包android.database包含了处理数据库的所有常规类。android.database.sqlite包含了所有SQLite特定类。
3.2 SQLiteOpenHelper
要在Android应用程序中创建和升级数据库,通常需要使用SQLiteOpenHelper。在子类的构造函数中,需要调用SQLiteOpenHelper的super()方法,指定数据库名称和当前数据库版本。
在这个类中,你需要重写onCreate()和onUpgrade()方法。
如果数据库不存在,那么onCreate()被框架调用。
如果应用程序代码中的数据库版本增加,则调用onUpgrade()。这个方法允许你更新数据库模式。
两个方法都接受一个SQLiteDatabase对象作为代表数据库的参数。
SQLiteOpendHelper提供了方法getReadableDatabase()和getWriteableDatabase()来访问SQLiteDatabase对象,或在读或写模式。
数据库表应该使用标识符 _id作为表的主键,几个Android功能都依赖这个标准。
最佳实践是为每个表创建一个单独的类。这个类定义了静态的onCreate()和onUpgrade()方法。这些方法在SQLiteOpenHelper的相应方法中调用。这样即使你有几个表,你的SQLiteOpenHelper实现仍可以保持可读性。
3.3 SQLiteDatabase
SQLitedatabase是在Android中使用SQLite数据库的基类,提供了打开,查询,更新和关闭数据库的方法。
更具体的说,SQLiteDatabase提供了insert(),update()和delete()方法。
此外,它提供了execSQL()方法,允许直接执行一个SQL语句。
对象ContentValues允许定义键/值。”key”表示表列标识符,”value”表示此列中表记录的内容。ContentValues可用于插入和更新数据库条目。
可以通过rawQuery()和query()方法或通过SQLiteQueryBuilder类创建查询。
rawQuery()直接接受一个SQL select语句作为输入。
query()提供了一个用于指定SQL查询的结构化接口。
SQLiteQueryBuilder是一个方便的类,可以帮助构建SQL查询。
3.4 rawQuery()示例
下面给了一个rawQuery()调用的示例
Cursor cursor = getReadableDatabase(). rawQuery('select * from todo where _id = ?', new String[] { id }); |
3.5 query()示例
下面给了一个query()调用的示例
return database.query(DATABASE_TABLE, new String[] { KEY_ROWID, KEY_CATEGORY, KEY_SUMMARY, KEY_DESCRIPTION }, null, null, null, null, null); |
方法query()含有以下参数:
表1.query()方法的参数
参数 |
注释 |
String dbName |
用于编译查询的表名 |
String[] columnNames |
返回的表列的列表,传递null返回所有列 |
String whereClause |
where自居,用于选择数据的过滤器,null将选择所有数据 |
String[] selectionArgs |
可以包含在where自居中,占位符将被selectionArgs数组中的值替换 |
String[] groupBy |
声明如何对行进行分组的过滤器,null将导致不对行进行分组 |
String[] having |
组过滤器,null表示没有过滤器 |
String[] orderBy |
用于排序数据的表列,null表示无排序 |
如果不需要条件,则可以传递null,例如,group by字句。
“whereClause”没有单词“where”,例如“where”语句可能看起来像:“_id = 19 and summary =?”。
如果在where子句中通过指定占位符值? ,则将它们作为selectionArgs参数传递给查询。
3.6 Cursor
查询返回Cursor对象。Cursor表示查询的结果,基本上指向查询结果的一行。这样Android可以有效地缓冲查询结果;因为它不必将所有数据加载到内存中。
要获取结果查询的元素数量,请使用getCount()方法。
要在单个数据行之间移动,可以使用moveToFirst()和moveToNext()方法。 isAfterLast()方法允许检查查询结果是否已经出来。
游标提供了类型化的get *()方法,例如:getLong(columnIndex),getString(columnIndex)来访问结果当前位置的列数据。 “columnIndex”是要访问的列的编号。
Cursor还提供了getColumnInde
全文共8017字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[142891],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。