iOS如何通过在线状态来监听其他设备登录的状态

前提条件

1、完成 3.9.1 或以上版本 SDK 初始化

2、了解环信即时通讯 IM API 的 使用限制。

3、已联系商务开通在线状态订阅功能

实现方法

你可以通过调用 subscribe 方法订阅自己的在线状态,从而可以监听到其他设备在登录和离线时的回调,示例代码如下:

先在EMConversationsViewController.m文件上加代理

objectivec 复制代码
EMPresenceManagerDelegate
objectivec 复制代码
[[[EMClient sharedClient] presenceManager] addDelegate:self delegateQueue:nil];

别的设备在发送状态变化的时候代理方法会接收到响应

objectivec 复制代码
- (void) presenceStatusDidChanged:(NSArray<EMPresence*>*)presences
{
   
    NSLog(@"presenceStatusDidChanged:%@",presences);
}

红框中的device是发布者的当前在线设备使用的平台,包括iOSAndroidLinuxwindowswebim

status 是当前在线状态,0为离线,1为在线。

通过上述的方式可以在监听到变化时可以让自己的设备做些业务。

相关文档:

注册环信:https://console.easemob.com/user/register

集成文档:https://docs-im-beta.easemob.com/document/ios/quickstart.html

社区支持:https://www.imgeek.net/

相关推荐
游戏开发爱好者81 小时前
iOS开发工具推荐:Xcode、AppCode、SwiftLint使用心得与效率提升
ide·vscode·macos·ios·个人开发·xcode·敏捷流程
2501_915909061 小时前
深入理解HTTPS中间人抓包技术原理与实战指南
网络协议·http·ios·小程序·https·uni-app·iphone
择势16 小时前
基于声网 Agora RTM + RTC SDK 实现 iOS 语音聊天室 —— 常见问题汇总 & 解决方案手册
ios
择势16 小时前
基于声网 Agora RTM + RTC SDK 实现 iOS 语音聊天室(进阶封装)
ios
择势17 小时前
基于声网 Agora RTM + RTC SDK 实现 iOS 语音聊天室——从零到可跑的指南
ios
白玉cfc17 小时前
【iOS】底层原理:类的加载
ios·objective-c·xcode
光电的一只菜鸡19 小时前
shell脚本开发技巧
开发语言·ios·swift
2501_9160074720 小时前
iOS应用性能优化全面指南:从内存管理到工具使用
android·ios·性能优化·小程序·uni-app·iphone·webview
库奇噜啦呼21 小时前
【iOS】源码学习-类的加载
学习·ios·cocoa
ayqy贾杰21 小时前
我同事,40了,他vibe coding了个App
前端·ios·客户端