ECDevice.logout(new ECDevice.OnLogoutListener() {
@Override
public void onLogout() {
// SDK 回調(diào)通知當(dāng)前登出成功
// 這里可以做一些(與云通訊IM相關(guān)的)應(yīng)用資源的釋放工作
// 如(關(guān)閉數(shù)據(jù)庫(kù),釋放界面資源和跳轉(zhuǎn)等)
}
});
// V5.1.8r版本開(kāi)始,增加退出登錄新消息提醒接口
/**
* 根據(jù)設(shè)置的{@link NotifyMode} 類型注銷SDK,SDK會(huì)根據(jù)應(yīng)用設(shè)置的是否接受消息提醒屬性來(lái)提醒接收到的Push消息。
* 1、如果應(yīng)用設(shè)置了{(lán)@link NotifyMode#NOT_NOTIFY} 即表示應(yīng)用注銷SDK,不再接收新的消息提醒,
* 調(diào)用此接口后SDK處于離線狀態(tài),此時(shí)可以再次調(diào)用注冊(cè)接口{@link #login(ECInitParams)}
* 進(jìn)行登錄,也可以調(diào)用{@link #unInitial()}接口釋放SDK。
* 2、如果應(yīng)用設(shè)置了{(lán)@link NotifyMode#IN_NOTIFY} 即表示應(yīng)用注銷SDK,但是繼續(xù)接收新的消息提醒,
* 此時(shí)SDK處于在線狀態(tài),并且SDK的所有新消息不會(huì)再直接PUSH給應(yīng)用,而是SDK直接采用狀態(tài)欄通知的方式進(jìn)行提醒,
* 此時(shí)可以再次調(diào)用注冊(cè)接口{@link #login(ECInitParams)} 進(jìn)行登錄,也可以調(diào)用{@link #unInitial()}接口釋放SDK,
* 并不會(huì)對(duì)SDK正常接收消息有任何影響
* 注意:如果應(yīng)用調(diào)用了{(lán)@link #unInitial()}接口釋放SDK,需要調(diào)用{@link #initial(Context, InitListener)}接口
* 重新初始化SDK,才能調(diào)用注冊(cè)接口注冊(cè)SDK,否則會(huì)提示SDK未初始化異常{@link SdkErrorCode#SDK_NOT_INIT}
* @param notifyMode 消息提醒類型(是否接受消息Push)
* @param listener SDK注銷回調(diào)
*
* @see #login(ECInitParams)
* @see OnLogoutListener
*/
public static void logout(NotifyMode notifyMode , OnLogoutListener listener)
// 消息提醒規(guī)則可以通過(guò)如下接口設(shè)置:
ECNotifyOptions mOptions = new ECNotifyOptions();
// 設(shè)置新消息是否提醒
mOptions.setNewMsgNotify(true);
// 設(shè)置狀態(tài)欄通知圖標(biāo)
mOptions.setIcon(R.drawable.ic_launcher);
// 設(shè)置是否啟用勿擾模式(不會(huì)聲音/震動(dòng)提醒)
mOptions.setSilenceEnable(false);
// 設(shè)置勿擾模式時(shí)間段(開(kāi)始小時(shí)/開(kāi)始分鐘-結(jié)束小時(shí)/結(jié)束分鐘)
// 小時(shí)采用24小時(shí)制
// 如果設(shè)置勿擾模式不啟用,則設(shè)置勿擾時(shí)間段無(wú)效
// 當(dāng)前設(shè)置晚上11點(diǎn)到第二天早上8點(diǎn)之間不提醒
mOptions.setSilenceTime(23, 0, 8, 0);
// 設(shè)置是否震動(dòng)提醒(如果處于免打擾模式則設(shè)置無(wú)效,沒(méi)有震動(dòng))
mOptions.enableShake(true);
// 設(shè)置是否聲音提醒(如果處于免打擾模式則設(shè)置無(wú)效,沒(méi)有聲音)
mOptions.enableSound(true);
// 設(shè)置退出登錄后接收消息提醒規(guī)則
ECDevice.setNotifyOptions(mOptions);
說(shuō)明: 注銷SDk,調(diào)用此接口后SDK處于離線狀態(tài),此時(shí)可以再次調(diào)用注冊(cè)接口
void login(ECInitParams inInitParams)進(jìn)行登錄,也可以調(diào)用unInitial()接口釋放SDK。