Android-IM通信

12 篇文章 0 订阅
从七月份到现在也有一个多月的时间了,哪怕是现在的我在敲打着键盘,写着博客,其实,我还是很忙的,并没有太多时间写博客,谁让我们公司那么坑爹,天天加班,没有周末,没有加班费,没有调休,还他妈的连顿饭都没有。此时的我心中无数只草泥马,可是又无法任性的辞职,毕竟到今天工作了366天了,明白一旦工作了,身上就肩负着一定的责任。这是我的第四份工作,以前都是看心情工作,不想干了就不干了,随着工作时间的增长,不再像以前那么自私,也会为公司考虑。其实我不喜欢这样子的我,我变了,是不是以后我就不能为自己而活了呢?!

年龄大了,喜欢发牢骚,进入正题,这一个多月,在公司研究IM通信和实时对讲,现在IM通信做的已经差不多了,功能上可以实现发送文字,语音,图片,界面上和微信一样,没错,这就是我自己的微信,主要用到的技术有:Netty,一个nio通信框架,当然这是后台使用的,Android也可以使用,使用的过程中有一些问题,比如报一些nio的异常,不太好解决,所以我的Android客户端就自己写了基于Tcp的Socket来实现与服务器的通信。

这里写图片描述

下面来看看客户端拿到消息之后的处理,因为消息有单聊的消息和群聊的消息

以下是伪代码:

TCPService里面的回掉方法伪代码:
1.保存消息
2.判断群聊还是单聊
//是群聊
if( isGroup){

if( CustomApplication.im_myid_groupid .equals(myid+groupid)){

//刷新页面

EventBus.getDefault().post();

}
else{
showNotify();
}
}
//单聊
else{

//是当前页面
if(CustomApplication.im_myid_sendid.equals(myid+sendid)){
//刷新页面
EventBus.getDefault.post();
}
else{
showNotify();
}
}
}

二、

1.每次进入chatActivity时都要保存当前当前聊天用户或者用户组,保存到全局CustomApplication中
退出时,都要置空“”
onResume();
2.从通知进入时
1.如果没有启动ChatActivity,就如同启动一个普通的activity
1.如果当前界面是ChatActivity,则执行onNewIntent()方法,
1.重新赋值
2.记录当前聊天界面的用户或者用户组到CustomApplication

先更新到这,下次有时间再详细的更新。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值