iOS苹果审核被拒---因QQ第三方登录

最近突然因为QQ第三方登录被拒,在这里记录一下。据说,由于QQ近期进行整体安全升级,原有部分第三方开发者通过拼接登录url或调起H5登录的方式,存在重大安全风险,1月31日起,第三方应用使用QQ登录时,仅可使用QQ或tim进行一键授权登录,其他所有登录方式将全部停止支持。
具体方案:1.移动应用使用openSDK时,直接调起一键登录,如果未安装qq或tim则 提示进行下载2.移动应用在浏览器内使用QQ登录时,直接调起一键登录,若手机内未 安装qq或tim则提示进行下载

1、QQ没有安装时提示下载被拒
  • 反馈信息:
    QQ没有安装时,点击后没有web的登录页,而是一个 提示下载页

  • 采取措施:
    根据是否安装了QQ与微信来控制第三方登录按钮的显示与隐藏
    [QQApiInterface isQQInstalled]; [WXApi isWXAppInstalled];

  • 遇到问题:
    其中,微信的判断遇到了问题,判断结果不准确,原因是AppDelegate.m里没有调用微信的注册App方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

      [WXApi registerApp:@"微信开放平台的AppId"];
}
2、满怀期望的提交审核后第二天已然被拒
  • 反馈信息:
    Apple给了两张截图:1. QQ没有安装时,登录页没有QQ的登录按钮(iPad截图)。2.登录页有QQ的登录按钮(iPhone截图)。看来是被抓住一次后重点照顾了,居然特意去下载一个QQ来对比。

  • 采取措施:
    根据App Store里的版本号以及App的版本号做判断,在审核状态下不显示第三方登录按钮。

    // 获取本地版本号
    NSString *currentVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"]; //info.plist里的 version
    
    // 取得AppStore信息
    NSString *url = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@", @"App 在AppStore的ID"];


    // 拿上面的URL走get请求,下面是简单的数据处理
    NSArray *resultArr = responseObject[@"results"];
    NSDictionary *resultsDict = resultArr.firstObject;
        
    // app store 最新版本号
    NSString *AppStoreVersion = resultsDict[@"version"];
        
    // AppStore版本号大于当前版本号
    if ([AppStoreVersion compare:currentVersion options:NSNumericSearch] == NSOrderedDescending) {
            // 已上线 手机不是最新版
            [[NSUserDefaults standardUserDefaults] setObject:@"YES" forKey:kIsShowLoginWithThird];
    }else if ([AppStoreVersion compare:currentVersion options:NSNumericSearch] == NSOrderedAscending) {
            //该版本 还未上线
            [[NSUserDefaults standardUserDefaults] setObject:@"NO" forKey:kIsShowLoginWithThird];
    } else {
            // 已上线 手机是最新版
            [[NSUserDefaults standardUserDefaults] setObject:@"YES" forKey:kIsShowLoginWithThird];
    }
        
    

点个赞或者小红心再走吧 ^ - ^

你可能感兴趣的:(iOS苹果审核被拒---因QQ第三方登录)