第一个Android Demo :Chat(伪即时通讯)

说明:上一篇文章因为我对这个写博客还不是很了解,所以造成了页面很乱的情况,所以看到之后马上修改

学习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流的复习和深入

*虽然我现在还是个菜鸟,但是我相信我还是可以飞的!!!!!!!!!!

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值