HXHG
Jump To… Overview Tasks + setupJMessage:appKey:channel:apsForProduction:category: + setupJMessage:appKey:channel:apsForProduction:category:messageRoaming: + addDelegate:withConversation: + removeDelegate:withConversation: + removeAllDelegates + setDebugMode + setLogOFF + registerForRemoteNotificationTypes:categories: + registerDeviceToken: + isMainAppKey: + setBadge: + resetBadge + sendCrossDeviceTransMessage:platform:handler: + isSetGlobalNoDisturb + setIsGlobalNoDisturb:handler: + noDisturbList: + blackList: + currentServerTime + testDBMigrating
# JMessage Class Reference
Inherits from | NSObject |
Declared in | JMessage.h |
## Overview
JMessage核心头文件
这是唯一需要导入到你的项目里的头文件,它引用了内部需要用到的头文件。
### + setupJMessage:appKey:channel:apsForProduction:category:
初始化 JMessage SDK
+ (void)setupJMessage:(NSDictionary *)launchOptions appKey:(NSString *)appKey channel:(NSString *)channel apsForProduction:(BOOL)isProduction category:(NSSet *)category
#### Discussion
此方法被[JMessage setupJMessage:appKey:channel:apsForProduction:category:messageRoaming:]方法取代
#### Declared In
JMessage.h
### + setupJMessage:appKey:channel:apsForProduction:category:messageRoaming:
初始化 JMessage SDK
+ (void)setupJMessage:(NSDictionary *)launchOptions appKey:(NSString *)appKey channel:(NSString *)channel apsForProduction:(BOOL)isProduction category:(NSSet *)category messageRoaming:(BOOL)isRoaming
#### Parameters
launchOptions |
AppDelegate启动函数的参数launchingOption(用于推送服务)
|
appKey |
appKey(应用Key值,通过JPush官网可以获取)
|
channel |
应用的渠道名称
|
isProduction |
是否为生产模式
|
category |
iOS8新增通知快捷按钮参数
|
isRoaming |
是否启用消息漫游,默认关闭
|
#### Discussion
此方法必须被调用, 以初始化 JMessage SDK
如果未调用此方法, 本 SDK 的所有功能将不可用.
#### Declared In
JMessage.h
### + addDelegate:withConversation:
增加回调(delegate protocol)监听
+ (void)addDelegate:(id)delegate withConversation:(JMSGConversation *)conversation
#### Parameters
delegate |
需要监听的 Delegate Protocol
|
conversation |
允许为nil
- 为 nil, 表示接收所有的通知, 不区分会话.
- 不为 nil,表示只接收指定的 conversation 相关的通知.
|
#### Discussion
默认监听全局 JMessageDelegate 即可.
这个调用可以在任何地方, 任何时候调用, 可以在未进行 SDK 启动 setupJMessage:appKey:channel:apsForProduction:category: 时就被调用.
并且, 如果你有必要接收数据库升级通知 JMSGDBMigrateDelegate, 就应该在 SDK 启动前就调用此方法, 来注册通知接收. 这样, SDK启动过程中发现需要进行数据库升级, 给 App 发送数据库升级通知时, App 才可以收到并进行处理.
#### Declared In
JMessage.h
### + removeDelegate:withConversation:
删除Delegate监听
+ (void)removeDelegate:(id)delegate withConversation:(JMSGConversation *)conversation
#### Parameters
delegate |
监听的 Delegate Protocol
|
conversation |
基于某个会话的监听. 允许为 nil.
- 为 nil, 表示全局的监听, 即所有会话相关.
- 不为 nil, 表示特定的会话.
|
#### Declared In
JMessage.h
### + removeAllDelegates
删除全部监听
+ (void)removeAllDelegates
#### Declared In
JMessage.h
### + setDebugMode
打开日志级别到 Debug
+ (void)setDebugMode
#### Discussion
JMessage iOS SDK 默认开启的日志级别为: Info. 只显示必要的信息, 不打印调试日志.
调用本接口可打开日志级别为: Debug, 打印调试日志,初始化 SDK 前调用.
#### Declared In
JMessage.h
### + setLogOFF
关闭日志
+ (void)setLogOFF
#### Discussion
关于日志级别的说明, 参考 [JMessage setDebugMode]
虽说是关闭日志, 但还是会打印 Warning, Error 日志. 这二种日志级别, 在程序运行正常时, 不应有打印输出.
建议在发布的版本里, 调用此接口, 关闭掉日志打印.
#### Declared In
JMessage.h
### + registerForRemoteNotificationTypes:categories:
注册远程推送
+ (void)registerForRemoteNotificationTypes:(NSUInteger)types categories:(NSSet *)categories
#### Parameters
types |
通知类型
|
categories |
类别组
|
#### Declared In
JMessage.h
### + registerDeviceToken:
注册 DeviceToken
+ (void)registerDeviceToken:(NSData *)deviceToken
#### Parameters
deviceToken |
从注册推送回调中拿到的 DeviceToken
|
#### Declared In
JMessage.h
### + isMainAppKey:
验证此 appKey 是否为当前应用 appKey
+ (BOOL)isMainAppKey:(NSString *)appKey
#### Parameters
#### Return Value
是否为当前应用 appKey
#### Declared In
JMessage.h
### + setBadge:
设置角标(到服务器)
+ (BOOL)setBadge:(NSInteger)value
#### Parameters
value |
新的值. 会覆盖服务器上保存的值(这个用户)
|
#### Discussion
本接口不会改变应用本地的角标值. 本地仍须调用 UIApplication:setApplicationIconBadgeNumber 函数来设置脚标.
该功能解决的问题是, 服务器端推送 APNs 时, 并不知道客户端原来已经存在的角标是多少, 指定一个固定的数字不太合理.
APNS 服务器端脚标功能提供:
- 通过本 API 把当前客户端(当前这个用户的) 的实际 badge 设置到服务器端保存起来;
- 调用服务器端 API 发 APNs 时(通常这个调用是批量针对大量用户), 使用 “+1” 的语义, 来表达需要基于目标用户实际的 badge 值(保存的) +1 来下发通知时带上新的 badge 值;
#### Declared In
JMessage.h
### + resetBadge
重置角标(为0)
+ (void)resetBadge
#### Discussion
相当于 [setBadge:0] 的效果. 参考 [JMessage setBadge:] 说明来理解其作用.
#### Declared In
JMessage.h
### + sendCrossDeviceTransMessage:platform:handler:
发送透传消息给自己在线的其他设备
+ (void)sendCrossDeviceTransMessage:(NSString *)message platform:(JMSGPlatformType)platform handler:(JMSGCompletionHandler)handler
#### Parameters
message |
发送的内容
|
platform |
设备类型
|
handler |
回调
|
#### Availability
3.5.0
#### Discussion
注意:
-
消息透传功能,消息不会进入到后台的离线存储中去,仅当对方用户当前在线时才会成功送达,SDK 不会将此类消息内容存储;
-
透传命令到达是,接收方通过 [JMSGEventDelegate onReceiveMessageTransparentEvent:] 方法监听。
#### Declared In
JMessage.h
### + isSetGlobalNoDisturb
判断是否设置全局免打扰
+ (BOOL)isSetGlobalNoDisturb
#### Return Value
YES/NO
#### Declared In
JMessage.h
### + setIsGlobalNoDisturb:handler:
设置是否全局免打扰
+ (void)setIsGlobalNoDisturb:(BOOL)isNoDisturb handler:(JMSGCompletionHandler)handler
#### Parameters
isNoDisturb |
是否全局免打扰 YES:是 NO: 否
|
handler |
结果回调。回调参数:error 不为 nil,表示设置失败
|
#### Discussion
此函数为设置全局的消息免打扰,建议开发者在 SDK 完全启动之后,再调用此接口获取数据
#### Declared In
JMessage.h
### + noDisturbList:
用户免打扰列表
+ (void)noDisturbList:(JMSGCompletionHandler)handler
#### Parameters
handler |
结果回调。回调参数:
- resultObject 类型为 NSArray,数组里成员的类型为 JMSGUser、JMSGGroup
- error 错误信息
如果 error 为 nil, 表示设置成功 如果 error 不为 nil,表示设置失败
|
#### Discussion
从服务器获取,返回用户的免打扰列表。 建议开发者在 SDK 完全启动之后,再调用此接口获取数据
#### Declared In
JMessage.h
### + blackList:
黑名单列表
+ (void)blackList:(JMSGCompletionHandler)handler
#### Parameters
handler |
结果回调。回调参数:
- resultObject 类型为 NSArray,数组里成员的类型为 JMSGUser
- error 错误信息
如果 error 为 nil, 表示设置成功 如果 error 不为 nil,表示设置失败
|
#### Discussion
从服务器获取,返回用户的黑名单列表。 建议开发者在 SDK 完全启动之后,再调用此接口获取数据
#### Declared In
JMessage.h
### + currentServerTime
获取当前服务器端时间
+ (NSTimeInterval)currentServerTime
#### Discussion
可用于纠正本地时间。
#### Declared In
JMessage.h
### + testDBMigrating
发起数据库升级测试
+ (void)testDBMigrating
#### Discussion
这是一个专用于测试时使用到的接口.
关于数据库升级相关, 参考这个 [JMSGDBMigrateDelegate] 类里的说明.
调用此接口后, App 会收到一个升级开始通知, 30s 后再收到一个升级结束通知.
本接口内部并不会真实地发起数据库升级操作, 而仅用于发出开始与完成的通知, 以方便 App 来测试处理流程.
#### Declared In
JMessage.h
Copyright © 2019 HXHG. All rights reserved. Updated: 2019-05-06
Generated by appledoc 2.2.1 (build 1334).