基于安卓的聊天App的设计与实现毕业论文(10)
姚旭斌:安卓聊天室App的设计与实现
4.1 系统项目结构设计
项目代码结构,如图所示:
图4- 2 代码结构图1
- 20 -
安徽工程大学毕业设计(论文)
图4- 3 代码结构图2
4.2 系统客户端的设计与实现
客户端采用的是MVC模式,即模型层,视图层和控制层。用一种业务逻辑、数据、界面显示分离的方法组织代码。有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。
4.2.1 用户界面
Android用户界面可以定义为XML中的布局资源或程序动态创建。Eclipse的Android开发插件包含了一个很方便的用于设计和预览布局资源的布局资源设计器。这个工具包括两个标签视图:布局视图允许你预览在不同的屏幕下以及对于每一个方向控件会如何展现;XML视图告诉你资源的XML定义。设计程序用户界面最方便且可维护的方式是
- 21 -
姚旭斌:安卓聊天室App的设计与实现
创建XML布局资源。这个访法极大地简化了UI设计过程,将许多用户界面控件的静态产物和布局,以及控件属性定义移动XML中,代替了写代码。它适应了UI设计师(更关心布局)和开发者(了解Java和实现应用程序功能)潜在的区别。开发者依然可以在必要的时候动态的改变屏幕内容。复杂控件,像ListView或GridView,通常用程序动态地处理数据。
在屏幕上显示一个布局资源只需要有包括onCreate()的一行代码就可以搞定。如果布局资源存放在/res/layout/main.xml文件,代码可能是:
setContentView(R.layout.main);用程序动态定义布局。 你也可以用程序创建用户界面组件。为了易组织和可维护性,仅在特殊时候这样做,而不是在一般情况下。不是直接使用setContentView()方法来加载布局资源,你必须创建屏幕内容然后向setContentView()方法提供包含所有要显示的子控件内容的父布局对象。
4.2.2 数据存储
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。利用xUtils框架进行数据库操作。
User表:用来存储用户的用户名和密码信息。
表4- 1 user表结构 字段名 id username realname voice shake sound 类型 int char char int int int 描述 Primery 用户名 备注 声音 震动 语音 - 22 -
安徽工程大学毕业设计(论文)
图4- 4 用户实体-联系图
Name表:用来储存当前用户的用户名。
表4- 2 name表结构
字段名 id name 类型 int char 描述 Primery 当前用户名 数据库相关核心代码如下: //初始化
DaoConfig config=new DaoConfig(getApplicationContext()); config.setDbName(\config.setDbVersion(1); DbUtils db=DbUtils.create(config); try { db.createTableIfNotExist(User.class); db.createTableIfNotExist(Myname.class); } catch (DbException e) { // TODO Auto-generated catch block e.printStackTrace(); }
- 23 -
姚旭斌:安卓聊天室App的设计与实现
4.3 即时通讯流程描述
整个系统流程可分为:用户登录登出—>会话列表读取—>好友列表读取—>消息的发送和接收。如下是即时通讯流程描述中主要核心功能代码。 4.3.1 判断网络是否连接
启动App时,我们需要判断当晚网络状态。当我们要在程序中监听网络状态时,只要以下几个步骤即可:
1.定义一个Receiver重载其中的onReceive函数,在其中完成所需要的功能,如根据WIFI和GPRS是否断开来改变空间的外观
2.在适当的地方注册Receiver,可以在程序中注册,在onCreate中调用。 3.在适当时取消注册Receiver,可以在程序中取消,在onDestroye中调用。 4.3.2 用户的登录和登出
图4- 5 登录模块
首先是布局文件,建立一个线性布局,在布局中添加子布局和控件,效果如下图所示,接着调用setContentView(R.layout.activity_login)方法将其显示在界面上。
- 24 -
…… 此处隐藏:286字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




