# IMKitModule (opens new window)
# 该框架是基于 网易云信 (opens new window) IOS SDK 二次开发,简化替换原有SDK内部调用第三方组件。优化适配了业务场景需要。
# 该组件集成至所有素+系列IOS应用内,其组件内部抽象程度和调用程度较高。
# 注意:该组件虽然没有单例对象,但需要使用者把IMSDKConfig对象保存至静态区,跟随App生命周期。
# 说明
- 提供简单易用胶水代码,方便调用。
- 对云信SDK内部统一简化适配,屏蔽冗余组件。
- 替换优秀组件并重新集成,更新内部第三方组件版本。
# 安装
- 该组件适用于IOS 10 (opens new window) 及以上SDK应用运行
- 该组件遵守Cocoapods (opens new window) 协议,并通过Cocoapods (opens new window) 进行集成
在项目 Podfile 文件内添加
pod 'IMKitModule'
在项目目录下执行脚本
pod install
插件即可集成至项目内
# 使用
首先需要全局配置
在IMSDKConfig.h (opens new window) 配置全局IM参数,其中仅提供一种初始方式
- (instancetype)initIMType:(IMAPPType)imType withAPNSCerName:(NSString *)cerName;
其中IMAPPType枚举声明如下,根据项目类型传不同参数,则cerName参数是IM后台配置文件字段
typedef NS_ENUM(NSInteger,IMAPPType) {
// 在线下单
IM_PRO_TYPESUPLUS = 3,
// 仓库
IM_PRO_STROGE = 4,
// 能力展示
IM_PRO_ABILITY = 5,
// 合伙人
IM_PRO_PARTNER = 6,
};
调用生成IMSDKConfig (opens new window) 对象后需要对内部SDK进行初始化
/**
初始化
*/
- (void)setupNIMSDK;
此时还需要对IM的登录状态进行操作和管理,相关API如下:
/**
登录API
*/
- (void)manualLoginWithAccount:(NSString *)account token:(NSString *)token;
/**
登出API
*/
- (void)manualLogout:(nullable NIMLoginHandler)completion;
/**
退出 Block 事件回调
*/
- (void)setLogoutBlock:(NIMLoginHandler)logoutBlock;
至此IM组件介绍完毕。