Эх сурвалжийг харах

Prevent a build error on Xcode 12 and earlier (#158)

* Prevent build error on Xcode 12 and earlier.

* Condense.

* Update test as well.
Peter Andrews 3 жил өмнө
parent
commit
fa8fbf9530

+ 4 - 1
GoogleSignIn/Sources/GIDEMMErrorHandler.m

@@ -148,6 +148,7 @@ typedef enum {
 
 // This method is exposed to the unit test.
 - (nullable UIWindow *)keyWindow {
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 150000
   if (@available(iOS 15, *)) {
     for (UIScene *scene in UIApplication.sharedApplication.connectedScenes) {
       if ([scene isKindOfClass:[UIWindowScene class]] &&
@@ -155,7 +156,9 @@ typedef enum {
         return ((UIWindowScene *)scene).keyWindow;
       }
     }
-  } else {
+  } else
+#endif  // __IPHONE_OS_VERSION_MAX_ALLOWED >= 150000
+  {
 #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_15_0
     if (@available(iOS 13, *)) {
       for (UIWindow *window in UIApplication.sharedApplication.windows) {

+ 4 - 1
GoogleSignIn/Tests/Unit/GIDEMMErrorHandlerTest.m

@@ -494,12 +494,15 @@ NS_ASSUME_NONNULL_BEGIN
                    selector:@selector(sharedApplication)
             isClassSelector:YES
                   withBlock:^{ return mockApplication; }];
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 150000
   if (@available(iOS 15, *)) {
     UIWindowScene *mockWindowScene = OCMClassMock([UIWindowScene class]);
     OCMStub(mockApplication.connectedScenes).andReturn(@[mockWindowScene]);
     OCMStub(mockWindowScene.activationState).andReturn(UISceneActivationStateForegroundActive);
     OCMStub(mockWindowScene.keyWindow).andReturn(mockKeyWindow);
-  } else {
+  } else
+#endif  // __IPHONE_OS_VERSION_MAX_ALLOWED >= 150000
+  {
 #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_15_0
     if (@available(iOS 13, *)) {
       OCMStub(mockApplication.windows).andReturn(@[mockKeyWindow]);