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/

相关推荐
疯狂的程序猴8 小时前
Flutter应用代码混淆完整指南:Android与iOS平台配置详解
后端·ios
SY.ZHOU9 小时前
移动端架构体系(五):终篇总结
flutter·ios·系统架构·安卓·鸿蒙
Digitally14 小时前
如何不用 iTunes 将 iPhone 备份到移动硬盘?
ios·iphone
sysinside14 小时前
Cisco Catalyst 9000 IOS XE 26.1.1 GA - 思科 Catalyst 9000 交换产品系列 IOS XE 系统软件
ios·cisco
低保和光头哪个先来14 小时前
解决 ios 使用 video 全屏未铺满页面问题
前端·javascript·vue.js·ios·前端框架
报错小能手15 小时前
SwiftUI 框架 认识 SwiftUI 视图结构 + 布局
ui·ios·swift
2501_9159214315 小时前
HTTP和HTTPS协议全面解析:技术原理与安全应用
安全·http·ios·小程序·https·uni-app·iphone
悟空爬虫-彪哥15 小时前
VRCFaceTracking安装和iPhone面捕配置教程,有bug
ios·bug·iphone
想个名字想老半天15 小时前
uni离线打包实现 ios 支付StoreKit 2,其实没有想象中那么复杂,不需要写原生插件,不需要转 uts
macos·ios·cocoa
报错小能手1 天前
ios开发方向——swift错误处理:do/try/catch、Result、throws
开发语言·学习·ios·swift