如何简单实现社交app

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

前段时间在研究写个简单的社交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() {
                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> conversations)

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

MobIM.getChatManager().getMessageList("00f3f1d0a7429000", IMConversation.TYPE_USER, 5, 1, new MobIMCallback>() {
                @Override
                public void onSuccess(List imMessages) {
                    System.out.println("----------1" + imMessages);
                    for (int i = 0;i>>"+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

转载于:https://my.oschina.net/u/3773669/blog/1626105

你可能感兴趣的:(如何简单实现社交app)