MPMssAdapter.framework
中 MPSyncInterface
这个类提供了移动同步服务所有 API 接口, 里面所有的方法都是类方法,可以直接使用类名调用方法。
+(void)initSync;
初始化接口,初始化移动同步服务。如果不调用,将导致当前 App 不能使用本服务。全局仅需调用一次(App 打开到关闭的生命周期内只需要调用一次)。
+(MPSyncNetConnectType)connectStatus;
查看当前移动同步服务连接情况。
返回连接状态 MPSyncNetConnectType
。
+(BOOL)registerSyncBizWithName:(NSString *)bizName syncObserver:(id)observer selector:(SEL)selector;
注册对业务名称为 bizName
的通知监听,内部调用了 [[NSNotificationCenter defaultCenter] addObserver:observer selector:selector name:bizName object:nil];
进行通知监听。
bizName
与服务端控制台配置项对应。如果不调用该接口则不分发该 biz 消息,消息会积压在客户端 SDK 的数据库。如果需要监听同步服务端消息的同步标识,最好启动时开始监听。
返回注册结果 YES
/NO
。
+(BOOL)unRegisterSyncBizWithName:(NSString *)bizName syncObserver:(id)observer;
通知移动同步服务客户端 SDK 已经取消某同步配置的消息监听,不再接收该同步配置的
Sync 消息,内部调用了 [[NSNotificationCenter defaultCenter] removeObserver:observer name:bizName object:nil];
进行监听移除。
调用该接口后不会再分发该 biz 的消息,消息会积压在 SyncSDK 的数据库,与 registerSyncBizWithName
接口对应。
返回结果 YES
/NO
。
+(void)removeSyncNotificationObserver:(id)observer;
取消 Sync 的通知监听,通常在监听类的 dealloc
函数中调用,内部调用了[[ NSNotificationCenter defaultCenter] removeObserver:observer];
进行监听者移除。
无返回值。
+(void)responseMessageNotify:(NSDictionary *)userInfo;
消息处理完成通知回调(callback)
,参数是通知里面的 userInfo(notify.userInfo)
。
回调 SyncSDK
,表示业务数据已经处理在 registerSyncBizWithName
接口注册的通知处理函数中,数据处理完后调用。
无返回值。
+(void)bindUserWithSessionId:(NSString *)sessionId;
用于登录信息 userId
或 sessionId
有变化时调用。
登录时调用,采用的 userId
为 MPaaSInterface
的 -(NSString\*)userId
函数。
如果 sessionId
过期, 或者是客户端在用户登录过一次之后具备了自动免登的功能,那么每次免登成功时也必须要调用本方法。
总体调用原则为:userId
或 sessionId
任意一个发生变化时都必须要调用本方法。
当 userId
发生变化时,先调用 unBindUser
解绑,然后调用bindUserWithSessionId:
重新建连。
sessionId 用于校验 session 合法性,需要服务端配合。如果设为 nil
,则默认为@”SESSION_DEMO”
。
无返回值。
+(void)unBindUser;
用户登出时候调用,解绑当前连接用户。
无返回值。
+(NSString *)getSyncDeviceId;
获取设备 ID,根据设备维度推 Sync 数据时采用此 ID。
返回设备 ID。
当接口中 SessionId
设置为无效值时,控制台的用户一致性选项必须处于关闭状态,否则校验不过无法成功推送 Sync。请参考 服务管理 开启或关闭签名校验。