帖子
帖子
用户
博客
课程
显示全部楼层
174
帖子
3
勋章
1067
Y币

[App引擎] 急,融云2 安卓杀死APP,再次上线没有离线消息补偿

[复制链接]
发表于 2022-4-26 15:03:38
工单标题:安卓端离线后再上线收不到离线时推送的消息
工单分类:IM 单聊 Android 5.2.1 Dev IMKit
关闭工单
工单号:170512
状态:优先处理中


沟通记录

安卓端离线后,好友给其发送消息,再上线后没有收到离线消息




zhangrong

您好,感谢您使用融云服务。
这个大概间隔了多长时间您又重新上线的,您这边是本地可以稳定复现这样的情况吗?方便提供下消息的详细信息,我们这边具体看下吗
您提供一下消息相关信息,我们查一下
appkey: 必填  
消息发送时间: 必填
发送者id: 必填
接收者id: 必填


1楼2022-04-25 14:58:46


请对本次回答评价:








appkey: pvxdm17jpdryr消息发送时间: 2022-04-25 16:00发送者id: 1507283200173936640接收者id: 1507283945044578304


2楼2022-04-25 16:04:17



zhangrong

您好,您看下 是不是这条消息在重新登录后没有收到 ,
{
"appId": "pvxdm17jpdryr",
"fromUserId": "1507283200173936640",
"targetId": "1507283945044578304",
"targetType": 1,
"GroupId": "",
"classname": "RC:TxtMsg",
"content": {
"content": "[开心]",
"isBurnAfterRead": false,
"burnDuration": 0
},
"dateTime": "2022-04-25 16:00:14.455",
"timestamp": 1650873614455,
"msgUID": "C0BU-U40T-TVK5-H6VP",
"source": "Android",
"isSensitiveWord": "false"
}


3楼2022-04-25 16:12:01


请对本次回答评价:








应该是 安卓在杀死APP的时候,融云啥进程没杀死。导致消息没进离线队列,导致下次上线没有离线消息补偿


4楼2022-04-25 16:19:12




appkey: pvxdm17jpdryr消息发送时间: 2022-04-25 16:21:55发送者id: 1508255764081807360接收者id: 1507283200173936640这条消息重新上线没有补偿{"status":"prepare","result":{"message":{"extra":"","sentStatus":"SENDING","messageId":51,"sentTime":1650874915386,"conversationType":"PRIVATE","messageUId":"","messageDirection":"SEND","receivedStatus":"UNREAD","content":{"extra":"{\"systemMsg\":2,\"isGroup\":0,\"messageBody\":{\"msg\":\"佛心\",\"memberId\":\"1508255764081807360\",\"senderImg\":\"https://car-party.oss-cn-beijing.aliyuncs.com/app/head-image/chat_1508255764081807360_20220328102051_246.jpg\",\"sendNickName\":\"vaiz24qxg8\",\"groupFlag\":2,\"memberPhone\":\"18281459979\",\"memberAccount\":\"z123654\",\"status\":null,\"sign\":null,\"createdTime\":1650874915285,\"action\":0,\"newsOnlyId\":null,\"animationFlag\":null,\"animationType\":null,\"withdrawFlag\":0,\"msgIds\":null,\"systemMsg\":0,\"systemType\":null}}","text":"佛心"},"objectName":"RC:TxtMsg","senderUserId":"1508255764081807360","readReceiptInfo":{},"receivedTime":0,"targetId":"1507283200173936640"}}}


5楼2022-04-25 16:23:56



zhangrong

您好,我们这边看到 ,1507283200173936640在  16:22:01.245 登录 拉取到了这条消息
您方便取下数据库我们这边看下吗,我们看下本地数据库中是否有这条消息
数据库位置:




6楼2022-04-25 17:06:09


请对本次回答评价:








华为手机找不到这个


7楼2022-04-25 17:51:08



zhangrong

您好,使用Android studio  下图这个位置 找您的包名,然后顺着上面链接的方法继续找下

8楼2022-04-25 18:23:32


请对本次回答评价:








appkey: pvxdm17jpdryr消息发送时间: 2022-04-26 10:07:33发送者id: 1508255764081807360接收者id: 1508626203824099328消息重新上线没有补偿!!!数据库在附件中{"status":"prepare","result":{"message":{"extra":"","sentStatus":"SENDING","messageId":56,"sentTime":1650938853630,"conversationType":"PRIVATE","messageUId":"","messageDirection":"SEND","receivedStatus":"UNREAD","content":{"extra":"{\"systemMsg\":2,\"isGroup\":0,\"messageBody\":{\"msg\":\"还差\",\"memberId\":\"1508255764081807360\",\"senderImg\":\"https://car-party.oss-cn-beijing.aliyuncs.com/app/head-image/chat_1508255764081807360_20220328102051_246.jpg\",\"sendNickName\":\"a8st3i9jiy\",\"groupFlag\":2,\"memberPhone\":\"18281459979\",\"memberAccount\":\"z123654\",\"status\":null,\"sign\":null,\"createdTime\":1650938853569,\"action\":0,\"newsOnlyId\":null,\"animationFlag\":null,\"animationType\":null,\"withdrawFlag\":0,\"msgIds\":null,\"systemMsg\":0,\"systemType\":null}}","text":"还差"},"objectName":"RC:TxtMsg","senderUserId":"1508255764081807360","readReceiptInfo":{},"receivedTime":0,"targetId":"1508626203824099328"}}}
zip新建文件夹...




9楼2022-04-26 10:14:52



zhangrong

您好,从数据库中过滤是有这条消息的,
您这边是否有设置接收消息监听,类似下面这个链接,具体怎么设置的麻烦您贴下


10楼2022-04-26 10:19:48


请对本次回答评价:








rong.init(function (ret, err) {if (ret.status == 'error') {Utils.log("融云初始化失败!" + err.code)} else {Utils.log("融云初始化成功!---------")// rong.configurationParameter({// alertTitle: '您有一条新的消息',// showNickname: '丽人街',// });// _this.setOnReceiveMessageListener();rong.setOnReceiveMessageListener(function (ret, err) {Utils.log(ret.result, "rong.setOnReceiveMessageListener接收融云消息")if (!ret.isPushMsg) {RY_MSG_HANDLER.RY_MSG_HANDLER(ret.result.message);}})// api.rebootApp();rong.setConnectionStatusListener(function (ret, err) {if (ret.result.connectionStatus == 'CONNECTED') {Utils.log("融云连接成功!", "rong.setConnectionStatusListener")// rong.getTotalUnreadCount(function (ret, err) {// Utils.log(ret)// })} else if (ret.result.connectionStatus == 'CONNECTING') {Utils.log("融云连接中!", "rong.setConnectionStatusListener")} else if (ret.result.connectionStatus == 'DISCONNECTED') {Utils.log("融云断开连接")} else if (ret.result.connectionStatus == 'KICKED') {Utils.log("用户账户在其他设备登录,本机会被踢掉线")api.setTabBarItemAttr({index: 1,badge: {color: '#FFFFFF',text: 0}});api.setTabBarItemAttr({index: 2,badge: {color: '#FFFFFF',text: 0}});HTTP.openLoginFail();} else if (ret.result.connectionStatus == 'NETWORK_UNAVAILABLE') {Utils.log("融云网络不可用")} else if (ret.result.connectionStatus == 'SERVER_INVALID') {Utils.log("融云服务器异常或无法连接")} else if (ret.result.connectionStatus == 'TOKEN_INCORRECT') {Utils.log("融云Token 不正确")}});_this.connectRongYun();/**@ discribe 监听音视频来电*@ zuthor zk*@ create-time: 2022-04-07 17:30:10*/rong.addCallReceiveListener({target: 'didReceiveCall'}, function (ret) {Utils.log(ret, "收到来电的事件")let callerUserId = ret.callSession.callerUserId;let user = DB.mail_list.findByMemberId(callerUserId);if (user.length > 0) {// Utils.log(ret.callSession.mediaType)if (ret.callSession.mediaType == 'audio') {api.openWin({name: 'voiceCalled',url: 'widget://pages/rongyunTRTC/voiceCalled.stml',pageParam: {callerUser: user[0]},bgColor: '#000000',animation: {type: "movein",subType: "from_bottom",}})} else {api.openWin({name: 'videoCalled',url: 'widget://pages/rongyunTRTC/videoCalled.stml',pageParam: {callerUser: user[0]},bgColor: '#000000',animation: {type: "movein",subType: "from_bottom",}})}}});/* 通话已接通的事件 */rong.addCallSessionListener({target: 'didConnect'}, function (ret) {Utils.log(ret, "通话已接通的事件")api.sendEvent({name: 'didConnect-cus'})});/*通话已结束的事件 (注意:双人通话中Android对端挂断也会回调该事件) */rong.addCallSessionListener({target: 'didDisconnect'}, function (ret) {Utils.log(ret, "通话已结束的事件 (注意:双人通话中Android对端挂断也会回调该事件)")api.sendEvent({name: 'didDisconnect-cus'})});/* 对端用户正在振铃的事件 */rong.addCallSessionListener({target: 'remoteUserDidRing'}, function (ret) {Utils.log(ret, "对端用户正在振铃的事件")});/* 有用户被邀请加入通话的事件 */rong.addCallSessionListener({target: 'remoteUserDidInvite'}, function (ret) {Utils.log(ret, "有用户被邀请加入通话的事件")});/* 对端用户加入了通话的事件 */rong.addCallSessionListener({target: 'remoteUserDidJoin'}, function (ret) {Utils.log(ret, "对端用户加入了通话的事件:remoteUserDidJoin")api.sendEvent({name: 'remoteUserDidJoin-cus'})});/* 对端用户切换了媒体类型的事件 */rong.addCallSessionListener({target: 'remoteUserDidChangeMediaType'}, function (ret) {Utils.log(ret, "对端用户切换了媒体类型的事件")});/* :对端用户开启或关闭了摄像头的状态的事件 */rong.addCallSessionListener({target: 'remoteUserDidDisableCamera'}, function (ret) {Utils.log(ret, ":对端用户开启或关闭了摄像头的状态的事件")});/* :对端用户挂断 */rong.addCallSessionListener({target: 'remoteUserDidLeft'}, function (ret) {Utils.log(ret, "对端用户挂断")api.sendEvent({name: 'remoteUserDidLeft-cus',extra: ret})});/* :通话过程中的错误事件 */rong.addCallSessionListener({target: 'errorDidOccur'}, function (ret) {Utils.log(ret, "通话过程中的错误事件")});}});


11楼2022-04-26 10:49:08



zhangrong

您好,

12楼2022-04-26 10:57:58


请对本次回答评价:








这个来自你们融云官方封装的apicloud模块setOnReceiveMessageListener设置接收消息的监听器,请在调用 init 方法之后,调用 connect 方法之前设置所有接收到的消息、通知、状态都经由此处设置的监听器处理。包括私聊消息、讨论组消息、群组消息、聊天室消息以及各种其他消息、通知、状态等setOnReceiveMessageListener(callback(ret, err))callback(ret)ret:类型:JSON 对象
微信截图_...




13楼2022-04-26 11:01:43



zhangrong

您好,您暂时将监听去掉,或者直接 使用
这个方法来设置下消息监听,然后再测试下消息是否在页面上展示

14楼2022-04-26 11:04:26


请对本次回答评价:








我们不是原生开发 如果使用你们这个的话 我们还必须将你们的SDK自己封装一个这个apicloud的融云模块,有点麻烦,因为这平台无法直接使用ios或者安卓的原生代码以及SDK


15楼2022-04-26 11:09:26



zhangrong

您好,您这边没有接收到消息 就是在接收消息监听位置没有日志输出吧。您具体是什么开发?
目前从上面提供的信息来看,消息是接收到的,目前就是看是不是页面展示的问题。

16楼2022-04-26 11:58:14


请对本次回答评价:








你好 这个地方有日志输出 我不知道为什么本地库有 但是这个监听方法里面没有接收到!


17楼2022-04-26 13:18:16




apicloud 3.0引擎 平台开发的


18楼2022-04-26 13:19:05




说错了 就是这个地方没有日志输出 导致我页面上没有消息,我只有通过这个地方进行接收消息做处理呢


19楼2022-04-26 13:20:28




那应该就是 消息确实收到存到本地了,监听器没有回调,就看是不是你们封装这个模块的时候是不是有点问题,你可以喊你们的工程师看看,ios是没问题的


20楼2022-04-26 13:24:33



zhangrong

您好,感谢您使用融云服务。
您搜索下这个类,下图位置是消息入库后传给lib 层的位置,接收消息时 您断点下这个位置
或者您看下有没有最后一个箭头位置的日志输出

21楼2022-04-26 14:27:53


请对本次回答评价:







zhangrong

您好,是这样的,融云和 apicloud 平台没有合作。
rongCloud2 模块现在由 apicloud 公司来维护,他们在模块中使用我们的 IMLib SDK,我们只对 IMLib SDK 提供支持和维护。理论上所有的 rongCloud2 模块的用户的支持都由 apicloud 来提供,我们提供支持给 apicloud。
所以所有关于 apicloud 的问题,请咨询 apicloud。

22楼2022-04-26 14:36:59


请对本次回答评价:








2022-04-26 14:58:40.587 7502-7567/com**.** D/RongLog: [RongLog][ NativeClient ] onReceived onLine message:2022-04-26 14:58:40.590 7502-7603/com**.** E/RongLog: [RongLog][ MessagePushConfig ] setChannelFromJson jsonStr is null2022-04-26 14:58:40.595 7325-7498/com**.** D/RTCLog-RongCallClient: inviteMessages: 0, hangupMessages: 0, acceptMessages: 02022-04-26 14:58:40.602 7325-7498/com**.** D/RongIMClientModule: onReceived RC:TxtMsg2022-04-26 14:58:40.605 7325-7325/com**.** I/app3c: {"left":0,"message":{"content":{"extra":"{\"systemMsg\":2,\"isGroup\":0,\"messageBody\":{\"msg\":\"莫莫莫\",\"memberId\":\"1508255764081807360\",\"senderImg\":\"https://car-party.oss-cn-beijing.aliyuncs.com/app/head-image/chat_1508255764081807360_20220328102051_246.jpg\",\"sendNickName\":\"a8st3i9jiy\",\"groupFlag\":2,\"memberPhone\":\"18281459979\",\"memberAccount\":\"z123654\",\"status\":null,\"sign\":null,\"createdTime\":1650956320368,\"action\":0,\"newsOnlyId\":null,\"animationFlag\":null,\"animationType\":null,\"withdrawFlag\":0,\"msgIds\":null,\"systemMsg\":0,\"systemType\":null}}","text":"莫莫莫"},"conversationType":"PRIVATE","extra":"","isDownload":false,"isListened":false,"isMultipleReceive":false,"isRead":false,"isRetrieved":false,"messageDirection":"RECEIVE","messageId":2,"messageUId":"C0CI-L3UD-DM86-5K4S","objectName":"RC:TxtMsg","readReceiptInfo":"{\"hasRespond\":false,\"isReceiptRequestMessage\":false}","receivedTime":1650956320579,"senderUserId":"1508255764081807360","sentStatus":"SENT","sentTime":1650956320565,"targetId":"1508255764081807360"}} android:rong.setOnReceiveMessageListener接收融云消息 at tab-1/tab-1.js:610:122022-04-26 14:58:40.666 7325-7325/com**.** W/ResourceType: Invalid package identifier when getting bag for resource number 0xfff5f5f52022-04-26 14:58:40.679 7325-7325/com**.** W/ResourceType: Invalid package identifier when getting bag for resource number 0xfff5f5f52022-04-26 14:58:41.922 7502-7604/com**.** D/RongLog: [RongLog][ heartBeatManager ] enqueue pingCode = 02022-04-26 14:58:41.923 7502-7604/com**.** D/RongLog: [RongLog][ heartBeatManager ] isTimeOut = false2022-04-26 14:58:41.958 7502-7599/com**.** I/RongLog: [RongLog][ ConnectionService ] ConnectionStatusListener OnPongReceived.2022-04-26 14:58:41.958 7502-7599/com**.** D/RongLog: [RongLog][ heartBeatManager ] dequeue2022-04-26 14:58:41.958 7502-7599/com**.** D/RongLog: [RongLog][ heartBeatManager ] isTimeOut = false这是接收一条消息所有的输出信息了 我们现在没法拿到安卓的源码查看 无法断点调试你们这个


23楼2022-04-26 15:00:56




好的 我咨询apicloud






我这边先理一下你的对话
你这边问题解决没
174
帖子
3
勋章
1067
Y币
已解决。。。。。。。。。。。。。
特特法爷 · 2022-5-25 14:45你这边问题解决没
好的
您需要登录后才可以回帖 登录

本版积分规则