Cordova6.1在ios 10系统中崩溃闪退

升级Cordova6.1后,测试ios 10手机系统,发现闪退,调试发现是ios内部写法不严谨导致的。
原因如下:

在CDVViewController. m 的 viewDidLoad 中,未经系统版本判断,直接使用 colorNamed 方法设置颜色,此方法在ios11之后才有,所以导致程式崩溃,解决方案如下:

    // /////////////////  調整ios 10 閃退
    UIColor* bgColor = [[UIColor alloc]init];
    if (@available(iOS 11.0,*)) {
        //此方法是 ios 11之後才有的,cordova未經版本判斷,直接崩潰
       bgColor = [UIColor colorNamed:@"BackgroundColor"] ?: UIColor.whiteColor;
    }else{
        bgColor = [UIColor whiteColor];
    }

你可能感兴趣的:(Cordova6.1在ios 10系统中崩溃闪退)