QQ与微信SDK协议冲突解决办法

最近在给项目添加QQ登录功能的时候,遇到一个小问题,它们两个不同的SDK协议里都需要实现以下方法:

//需要在AppDelegate.m中实现的方法
//微信
- (void)onReq:(BaseReq *)req;
- (void)onResp:(BaseResp *)resp;

//QQ
- (void)onReq:(QQBaseReq *)req;
- (void)onResp:(QQBaseResp *)resp;

解决方法:

//把参数类型换成id
- (void)onReq:(id)req{
      if([req isKindOfClass:[BaseReq class]]){
             //实现微信业务逻辑
             //如果需要获取参数中属性的值,可以用KVC
             //[req valueForKey:@"key"];
      } else {
             //QQ业务逻辑
      }
}

你可能感兴趣的:(QQ与微信SDK协议冲突解决办法)