说明:上一篇文章因为我对这个写博客还不是很了解,所以造成了页面很乱的情况,所以看到之后马上修改
学习Android到现在估计应该还不到一个月的时间,我很激动能够在自己的努力还有奋斗下开发一个自己想要的App,虽然这个App的功能还不够完善,界面很丑陋,Bug很存在很多,但是我觉得这个起码是我自己动用智慧开发的第一个App,所以我要在这里将我开发的思路还有一个想法写在这里。
以实现功能:
即时通讯:不同好友之间可以即时通讯。但是同时只能和一个人通讯。
注 册:注册功能实现,但是数据保存的是客户端,即是在Android本地的数据库,并没有将用户保存到服
服务器。
登 录:登录会自动和本地数据库中进行校对,基本的登录思想。
添加好友:当前数据库中存在好友时,可以实现添加到好友列表。Bug:Sqlite的用法还是不够熟练,
当存在该好友的情况下还是可以继续添加该还有
用到的知识:
基本的Android界面布局,Sqlite,Servlet(服务器端),JavaBean思想,Http协议,Android中的
Http操作,ListView,自定义ArrayAdapter,Android中Activity的生命周期,Activity中的定时操
作,异步处理,子线程处理。
功能详解:
Login(登录页面):
作为App的主页面,虽然丑陋了一点,但是它起到的作用也就是仅仅登录作用,当点击登录之后,会自动
和本地数据库中做校验,存在即登录,失败即提示无法登陆;
Regist(注册页面):
和登录洗洗相关的,登录即少不了注册;
这个是我注册的主界面,提供了用户名,密码注册选项,其中后台数据库并没有使用Base64,和md5进行加密。
其中在后台会自动为每一个UUID作为主键,保证每个人的信息不同,其中用户名时唯一存在的。
String uuid = UUID.randomUUID().toString().replace("-", "").toUpperCase();
当数据库存在该用户时:
数据库中保存的情况:
FriendList(好友列表):
此处是用来显示自己的好友;还提供添加好友的按钮和逻辑
实现思想:创建一个JavaBean,包含当前用户和用户所有的好友List,并在数据库中创建相关的表。
当接收从登陆界面获得的User时,用得到的User和数据库中的当前用户做比较,返回所有的List。
复写:ArrayAdapter,添加选中事件。
AddFriend(添加好友页面):
输入需要查找的好友;如果存在:
找到该好友并且提供添加。
点击OK之后会在数据中将该好友的信息添加到该用户的好友列表中去。
但是当不存在时,会提示不存在该好友。
已知Bug:
由于对Sqlite的使用不是很熟练,导致不能判断在该用户的好友列表是否已经存在该好友,导致可以重复添加单个用户。
Chat(聊天):
这个应该才是重点。
基本界面:
很简陋的一个页面。当点击了该还有之后便可以实现好友之间的通讯。
演示图:
基本思想:使用的是Http协议进行通讯,后台是使用Servlet写的。
发送消息:每个用户进行发消息,会将当前的消息内容,当前用户,目的用户发送到后台的Servlet。后台接受到所有用户发送的消息,保存到一个Bean类中去。
接受消息:在MainActivity创建一个定时操作。一直访问后台的Servlet。后台通过访问接受到数据进行分辨,将该用户的信息返回。(为了研究那个定时操作,我用掉了手机100多M流量);
因为学过一段时间的JavaWab所以还是有一点点后台基础的。。。
好了 我这个第一个AndroidDemo Chat在这里也介绍完了。希望Csdn中的大牛能够指出我的错误和不足的地方,我好进步。
写完这个博客我很激动,毕竟这个是我第一Android项目,并且也是第一个技术贴。我很懒不是很喜欢打那么多字,但是这个博客慢慢的就写完了。。。
分享下自己下段时间的打算:
Android生命周期的更深层次理解
Android动画相关知识
Android基本手势操作
JavaIo流的复习和深入
*虽然我现在还是个菜鸟,但是我相信我还是可以飞的!!!!!!!!!!