#define CONTROLER_RL_H
#include "interface/ECStructDef.h"
class RLInterface
{
public:
static void Init(RLInterface *d)
{
LoginCallBackFunc::setInstance(d);
……
}
virtual void RLLogoutResult(bool) = 0; ……};
#endif // CONTROLER_RL_H
2、与容联SDK对接回调接口(注意函数名称大小写) #ifndef LOGINCALLBACKFUNC_H#define LOGINCALLBACKFUNC_H
/********************************************** *
@author:Zhenyu.Sha *
@effect:登录的回调函数类,更多注释见源文件
* 使用前,请先设置setInstance()
***********************************************/
#include "../interface/ECStructDef.h"
class RLInterface;
namespace LoginCallBackFunc{
void setInstance(RLInterface *d);
}
static RLInterface *Instance = Q_NULLPTR;
void LoginCallBackFunc::setInstance(RLInterface *d)
{
Instance = d;
}
void OnLogOut(int reason)
{
Instance->RLLogoutResult(reason == EC_Response_Success);
}
……
#endif // LOGINCALLBACKFUNC_H
3、与我们的软件对接的接口 ECGeneralCallBackInterface* m_pECGeneralCallBack = Q_NULLPTR; //设置个人信息回调m_pECGeneralCallBack = new ECGeneralCallBackInterface;
if(m_pECGeneralCallBack) {
memset(m_pECGeneralCallBack,0,sizeof(ECGeneralCallBackInterface));
m_pECGeneralCallBack->pfonLogOut = OnLogOut;
SetGeneralCallBackFuction(m_pECGeneralCallBack);
}
4、注意事项(必须在初始化sdk后添加回调,否则回调无作用) Init(this);//初始化接口ECSDK_Initialize();//初始化sdk
//设置dns关闭
int dns = SetInternalDNS(false, NULL, 0);
if(dns != 0) {
qDebug() << "dns fail";
}
//设置个人信息回调
m_pECGeneralCallBack = new ECGeneralCallBackInterface;
if(m_pECGeneralCallBack) { memset(m_pECGeneralCallBack,0,sizeof(ECGeneralCallBackInterface));m_pECGeneralCallBack->pfonLogOut = OnLogOut;
SetGeneralCallBackFuction(m_pECGeneralCallBack);
}