如何简单实现社交app

简介:

前段时间在研究写个简单的社交app,初步有成,给大家分享点小心得。目前市面的社交软件越来越多,实现及时聊天的功能也是很多开发新手们需要掌握的一项技能。
在要实现这个功能前,我上网百度了很多关于及时通信的框架工具等等,所幸功夫不负有心人,在mob官网(http://www.mob.com/)找到一个简单好用并且免费的sdk工具-MOBIM,仔细看了下文档,集成步骤也很简单,只需要在gradle配置下提示的文件就好,具体的我这里就不说了,官网介绍的还是比较仔细的,需要注意的是这个MOBIM的sdk是基于用户登录系统使用的,也就是说开发者需要有自己的登录系统,值得一提的是mob官网竟然也有用户系统的sdk-UMSSDK,如果只是先测试下的小伙伴可以先集成下UMSSDK,集成方法也是gradle配置,很方便,代码部分,各位可以看下问文档说明,我这里就不多做赘述了。
集成好后,登录成功后,设置用户信息(IM会使用此用户进行通讯)

MobSDK.setUser(id, name,"https://lanre.smartemple.cn/image/share.png", null);

登陆进自己的账号后会看到有个自己的ID,这个就相当于是自己的账号,添加好友需要输入对方的ID才行,类似于QQ微信等通讯工具。这个ID在后面代码里发送消息时也会传到这个值,当然首先要获取到这个发送消息的对象并创建会话,这里第一传的值就是之前说的ID

IMMessage imMessage 
=MobIM.getChatManager().createTextMessage("00f3f1d0a7429000","abclarry", 
IMConversation.TYPE_USER);

MOBIMCallback是MOBIM所有异步操作的结果回调,这里发送消息也需要这个回调:

MobIM.getChatManager().sendMessage(imMessage, new MobIMCallback<Void>() {
                public void onSuccess(Void result)  {
                    // TODO 处理消息发送成功的结果
                    System.out.println("---------------------发送消息成功");
                    Toast.makeText(MainActivity.this,"发送消息成功",0).show();
                }
                public void onError(int code, String message)  {
                    // TODO 根据错误码(code)处理错误返回
                    System.out.println("---------------------失败"+message+"--CODE"+code);
                }
            });

        }
    });

这样就可以实现发送信息啦。
到这里或许会有人问如何获取到会话列表呢,其实文档也提供了一个方法

MobIM.getChatManager().getAllLocalConversations(MobIMCallback<List<IMConversation>> conversations)

好友是在list集合里,同样的也需要MOBIMCallback这个回调去处理:

MobIM.getChatManager().getMessageList("00f3f1d0a7429000", IMConversation.TYPE_USER, 5, 1, new MobIMCallback<List<IMMessage>>() {
                @Override
                public void onSuccess(List<IMMessage> imMessages) {
                    System.out.println("----------1" + imMessages);
                    for (int i = 0;i<imMessages.size();i++){
                        IMMessage imMessage =  imMessages.get(i);
                        System.out.println("------------>>>"+imMessage.getBody());
                    }
                    Toast.makeText(MainActivity.this,"打印列表成功请看日志",0).show();
                }

                @Override
                public void onError(int i, String s) {
                    System.out.println("----------" + s);

                }
            });

这里我只是举例了几个常用的方法演示,更多的功能实现在文档都是有说明的,有兴趣的可以看下。 整个实现过程其实算是比较简单的,有些个人的需求在文档没有标注的问了下他们的技术支持小哥哥,也得到了耐心的解答,工具是免费也挺好用的,关键有坑还可以找客服帮忙,算是我们这样新手菜鸟的福利啦,可以安利下,测试后发送信息也挺快的,几乎满足了日常聊天的全部需求了,还是很棒哒!
demo地址https://github.com/zhangshuai0321/allen228

目录
相关文章
|
Java Android开发 数据安全/隐私保护
im即时通讯开发/聊天软件系统/社交APP源码搭建/私有化部署聊天原生开发源码快速搭建
由IM技术专家打造的基于 Java 实现的即时通讯(IM)项目 我们提供私有化即时通讯解决方案,独立部署在您自己的服务器上、代码可以开源、支持二次开发、苹果端上线指导,源码出售,提供远程技术指导,全程指导服务器部署打包. 特点:原生开发 超高并发 音视频通话
im即时通讯开发/聊天软件系统/社交APP源码搭建/私有化部署聊天原生开发源码快速搭建
|
2月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
6月前
|
机器学习/深度学习 人工智能 搜索推荐
抖音上线AI社交APP“话炉”
【2月更文挑战第16天】抖音上线AI社交APP“话炉”
218 2
抖音上线AI社交APP“话炉”
|
6月前
|
存储 缓存 算法
jvm性能调优实战 - 34十万QPS的社交APP 如何优化GC性能提升3倍?
jvm性能调优实战 - 34十万QPS的社交APP 如何优化GC性能提升3倍?
143 0
jvm性能调优实战 - 34十万QPS的社交APP 如何优化GC性能提升3倍?
|
安全 算法 大数据
社交语聊APP发展前景及遇到黑客攻击怎么解决
社交语聊APP发展前景及遇到黑客攻击怎么解决
91 0
社交app源码技术屏幕的两大实用功能
很多人就会去选择去社交app软件,这也促使了社交app源码搭建平台的火爆,但是要想搭建出一个令用户满意的社交app平台,就要去了解用户需要什么样的社交app源码技术功能,今天我要讲的也是用户需要的,关于屏幕的两大实用功能:屏幕共享与屏幕录制!
社交app源码技术屏幕的两大实用功能
|
算法 安全
某社交App cs签名算法解析(二) 都是套路
某社交App cs签名算法解析(二) 都是套路
某社交App cs签名算法解析(二) 都是套路
|
监控 算法 安全
某社交App cs签名算法解析(一) SSL双向认证
某社交App cs签名算法解析(一) SSL双向认证
某社交App cs签名算法解析(一) SSL双向认证
|
消息中间件 数据库 开发者
语音直播社交app源码,引入消息队列后的常见问题
语音直播社交app源码,引入消息队列后的常见问题
|
负载均衡 测试技术
相亲app开发为社交赋能,关于性能测试的那些事
相亲app开发为社交赋能,关于性能测试的那些事

热门文章

最新文章