public class SDKOptions
extends java.lang.Object
限定符和类型 | 字段和说明 |
---|---|
boolean |
animatedImageThumbnailEnabled
开启对动图缩略图的支持
默认为 NO。
|
java.lang.String |
appKey
设置云信SDK的appKey。
|
boolean |
asyncInitSDK
是否异步初始化SDK
默认同步初始化 SDK,如果您的 APP 不需要第一时间使用云信 API,可以采用异步加载,这样可以大大缩短在 Application#onCreate 中执行 SDK 初始化函数的响应时间。
|
AuthProvider |
authProvider
注意:使用动态登录(即LoginInfo.authType为1)时,必须设置该接口
|
CaptureDeviceInfoConfig |
captureDeviceInfoConfig
设备信息获取配置
null代表都可以获取
不获取设备信息可能影响功能,使用请联系技术支持
|
int |
cdnRequestDataInterval
Cdn信息上报的回调间隔
|
boolean |
checkManifestConfig
是否检查 Manifest 配置
最好在调试阶段打开,调试通过之后请关掉
|
boolean |
clearTimeTagAtBeginning
是否重置同步时间戳,启动时重置,只重置一次(不建议开启,如需开启请联系技术支持)
|
int |
coreProcessStartTimeout
core进程启动的超时时间(单位:毫秒)
|
java.lang.String |
customPushContentType
离线推送不显示详情时,要显示的文案对应的类型名称
|
java.lang.String |
databaseEncryptKey
数据库加密秘钥,用于消息数据库加密。
|
static SDKOptions |
DEFAULT |
boolean |
disableAwake
禁止后台进程唤醒ui进程
|
boolean |
enableBackOffReconnectStrategy
是否使用随机退避重连策略,默认true,强烈建议打开。
|
boolean |
enableChatRoomLocation
是否开启聊天室空间消息能力,默认不开启,开启请联系技术支持
|
boolean |
enableDatabaseBackup
是否开启数据库备份功能
|
boolean |
enabledQChatMessageCache
是否开启圈组消息缓存支持,默认不开启
|
boolean |
enableFcs
是否开启融合存储
|
boolean |
enableForegroundService
启动NimService失败时,是否尝试以前台服务方式启动
|
boolean |
enableLBSOptimize
是否启用网络连接优化策略,默认开启。
|
boolean |
enableLoseConnection
是否开启loseConnection,对齐IOS,临时方案
|
boolean |
enableRecentContactsTimeIndex
是否开启最近联系人会话时间索引
默认为 false,即不开启最近联系人会话时间索引。
|
boolean |
enableTeamMsgAck
是否启用群消息已读功能,默认关闭
|
FcsDownloadAuthStrategy |
fcsDownloadAuthStrategy
nos下载鉴权策略,如需开启,请咨询云信技术支持。
|
long |
fetchServerTimeInterval
获取服务器时间连续请求间隔时间, 最小1000ms, 默认2000ms
|
java.lang.String |
flutterSdkVersion |
boolean |
improveSDKProcessPriority
是否提高SDK进程优先级(默认提高,可以降低SDK核心进程被系统回收的概率);如果部分机型有意外的情况,可以根据机型决定是否开启。
|
LogDesensitizationConfig |
logDesensitizationConfig
日志脱敏配置
|
java.lang.String |
loginCustomTag
登录时的自定义字段 , 登陆成功后会同步给其他端 ,获取可参考 AuthServiceObserver#observeOtherClients()
|
MessageNotifierCustomization |
messageNotifierCustomization
通知栏提醒文案定制
|
static long |
MIN_MSG_TYPING_EVENT_INTERVAL
正在输入事件发送最小间隔
|
MixPushConfig |
mixPushConfig
第三方推送配置
|
NosTokenSceneConfig |
mNosTokenSceneConfig
nos token 场景配置
|
NotificationChannelProvider |
notificationChannelProvider
可配置通知要走的通道,如果不配置,根据响铃振动等配置走对应默认通道
|
boolean |
notifyStickTopSession
置顶会话是否同步
|
boolean |
preloadAttach
是否需要SDK自动预加载多媒体消息的附件。
|
boolean |
preLoadServers
预加载服务,默认true,不建议设置为false,预加载连接可以优化登陆流程,提升用户体验
|
long |
qChatTypingEventMinInterval
圈组正在输入事件发送最小间隔,最小间隔默认3000毫秒,设置小于3000毫秒无效
|
RecentContactContentSource |
recentContactContentSource
RecentContact中content字段的内容来源,默认MessageTypeTipPreferred,优先使用对应消息的MsgTypeEnum.sendMessageTip,如果为空,则使用对应消息的Content
|
ReconnectStrategy |
reconnectStrategy
如要开启此功能,请联系技术支持
|
boolean |
reducedIM
是否是弱IM场景(慎用)
默认为 false,即强 IM 场景。
|
boolean |
reportImLog
是否开启IM日志自动上报(如要开启此功能,请联系技术支持)
|
boolean |
rollbackSQLCipher
回滚SQLCipher加密的数据库
|
java.lang.String |
sdkStorageRootPath
外置存储根目录,用于存放多媒体消息文件。
|
SecondTimeoutConfig |
secondTimeoutForSendMessage
发消息的第二超时时间,非常规功能,开启请联系技术支持
|
ServerAddresses |
serverConfig
配置专属服务器的地址。
|
boolean |
sessionReadAck
是否开启会话已读多端同步,支持多端同步会话未读数
|
boolean |
shouldConsiderRevokedMessageUnreadCount
是否需要将被撤回的消息计入未读数
默认是false,即撤回消息不影响未读数,客户端通常直接写入一条Tip消息,用于提醒"对方撤回了一条消息",该消息也不计入未读数,不影响当前会话的未读数。
|
StatusBarNotificationConfig |
statusBarNotificationConfig
状态提醒设置。
|
boolean |
teamNotificationMessageMarkUnread
群通知消息是否计入未读数,默认不计入未读
|
int |
thumbnailSize
消息缩略图的尺寸。
|
boolean |
useAssetServerAddressConfig
是否检查并使用Asset目录下的私有化服务器配置文件server.conf(固定命名)
默认是false
一般只有私有化项目中,在私有化测试期间需要开启此选项,并将配置文件放在Assets/server.conf
注意:如果在SDKOptions.serverConfig已经配置了,那么该本地配置文件将失效!
|
boolean |
useNtServer
是否开启运行时异常统计
|
UserInfoProvider |
userInfoProvider
通知栏显示用户昵称和头像
|
boolean |
useXLog
使用性能更好的SDK日志模式。
|
构造器和说明 |
---|
SDKOptions() |
public static final SDKOptions DEFAULT
public java.lang.String appKey
public AuthProvider authProvider
public boolean useAssetServerAddressConfig
public StatusBarNotificationConfig statusBarNotificationConfig
public UserInfoProvider userInfoProvider
public MessageNotifierCustomization messageNotifierCustomization
public java.lang.String sdkStorageRootPath
public java.lang.String databaseEncryptKey
public boolean preloadAttach
public int thumbnailSize
public boolean sessionReadAck
public boolean improveSDKProcessPriority
public ServerAddresses serverConfig
public boolean preLoadServers
public boolean teamNotificationMessageMarkUnread
public boolean useXLog
public boolean animatedImageThumbnailEnabled
默认为 NO。即默认情况下,NOS 对动图 缩放流程为截取第一帧并缩放返回。 若设置为 YES, SDK 在请求缩略图时候将直接下载动图。
public boolean asyncInitSDK
默认同步初始化 SDK,如果您的 APP 不需要第一时间使用云信 API,可以采用异步加载,这样可以大大缩短在 Application#onCreate 中执行 SDK 初始化函数的响应时间。 如果采用异步初始化,又在 SDK 初始化函数执行后立即调用 XXXService 接口,那么调用线程将会被阻塞(不超过200ms),直到 SDK 异步初始化完成(大约在60-180ms)。 说明:无论同步还是异步初始化 SDK, 调用 XXXServiceObserver 接口不受任何影响!
public boolean reducedIM
默认为 false,即强 IM 场景。 弱 IM 场景:APP 仅在部分场景按需使用 IM 能力(不需要在应用启动时就做自动登录),并不需要保证消息通知、数据的实时性,那么这里可以填 true。
在弱 IM 场景下,SDK 将在初始化过程中不启动 push 进程(维护与云信服务器的长连接),一直延迟到 IM 手动登录过程再做懒启动。 在弱 IM 场景下,push 进程的生命周期同 UI 进程,即当 UI 进程被销毁后,push 进程将自行退出,不占用系统资源,也不再保持与云信服务器的连接。 注意:弱 IM 场景下,请不要使用自动登录,如果使用了自动登录,那么该设置自动失效。
public boolean checkManifestConfig
public MixPushConfig mixPushConfig
public boolean enableBackOffReconnectStrategy
public ReconnectStrategy reconnectStrategy
public boolean enableLBSOptimize
public boolean enableTeamMsgAck
public boolean shouldConsiderRevokedMessageUnreadCount
public NosTokenSceneConfig mNosTokenSceneConfig
public boolean enableFcs
public FcsDownloadAuthStrategy fcsDownloadAuthStrategy
public boolean useNtServer
public java.lang.String loginCustomTag
public boolean disableAwake
public long fetchServerTimeInterval
public boolean reportImLog
public java.lang.String customPushContentType
public RecentContactContentSource recentContactContentSource
public boolean notifyStickTopSession
public boolean enableForegroundService
public int cdnRequestDataInterval
public boolean rollbackSQLCipher
public int coreProcessStartTimeout
public boolean clearTimeTagAtBeginning
public boolean enableDatabaseBackup
public CaptureDeviceInfoConfig captureDeviceInfoConfig
public SecondTimeoutConfig secondTimeoutForSendMessage
public boolean enableRecentContactsTimeIndex
默认为 false,即不开启最近联系人会话时间索引。 开启最近联系人会话时间索引后会明显减少查询最近联系人会话耗时,但是同时也会增加最新联系人会话写入操作耗时。
public java.lang.String flutterSdkVersion
public NotificationChannelProvider notificationChannelProvider
public boolean enableChatRoomLocation
public boolean enabledQChatMessageCache
public static final long MIN_MSG_TYPING_EVENT_INTERVAL
public long qChatTypingEventMinInterval
public LogDesensitizationConfig logDesensitizationConfig
public boolean enableLoseConnection