使用极光即时通讯发送、接收好友请求

首先需要知道整个流程,包括发送方,和接收方

发送请求比较简单
如果集成了JMessage可以直接使用下面的类

sendInvitationRequest方法包含三个参数,分别是目标id,备注,和返回结果。

ContactManager.sendInvitationRequest(userName,content, new BasicCallback() {
                        @Override
                        public void gotResult(int i, String s) {
                            if (i==0){
                                showToast(AddFriendMsgActivity.this, "发送成功");
                            }else {
                                showToast(AddFriendMsgActivity.this, "发送失败:"+s);
                            }
                        }
                    });

请求相对来说比较复杂一些,需要我们手动去接收消息。

首先是需要注册消息事件,有两种地方。但是都要在OnCreate方法体内先注册事件接收者

JMessageClient.registerEventReceiver(this);

如果需要使用极光的Event还要注册:

EventBus.getDefault().register(this);

注册完后要重写线程方法
一种是主线程:

  public void onEventMainThread(ContactNotifyEvent event) {
        String message = event.getReason();

        Log.e("bean===", event.getFromUsername() + "," + event.getReason());
    }

另一种是子线程:

public void onEvent(EventEntity event){

}

然后我们来打印两个客户端进行传递消息的日志。

JPushIM.png

07-27 15:50:22.133 19990-19990/com.wapchief.jpushim E/bean===: 1004,你好!我是测试老四
07-27 16:02:58.727 21015-21015/com.wapchief.jpushim E/bean===: 1004,你好!我是测试老四1,invite_received
07-27 16:03:03.652 21015-21015/com.wapchief.jpushim E/bean===: 1004,你好!我是测试老四1,2,invite_received
07-27 16:03:29.118 21015-21015/com.wapchief.jpushim E/bean===: 1004,你好!我是测试老四1,2,invite_received

最后别忘了销毁

    @Override
    protected void onDestroy() {
        //销毁
        JMessageClient.unRegisterEventReceiver(this);
        super.onDestroy();

    }

PS
中间还遇到了一个Bug

has no public methods called onEvent
//没有公共方法叫做onEvent

检查是否注册EventBus
和重写onEvent


文档参考:
https://docs.jiguang.cn/jmessage/client/im_android_api_docs/
https://docs.jiguang.cn/jmessage/client/im_sdk_android/#_45
https://stackoverflow.com/questions/24926859/subscriber-class-has-no-public-methods-called-on-event

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值