diff --git a/webrtc/test/BUILD.gn b/webrtc/test/BUILD.gn index 9ec02902d9..dc696c43c4 100644 --- a/webrtc/test/BUILD.gn +++ b/webrtc/test/BUILD.gn @@ -119,6 +119,9 @@ if (is_ios) { "ios/test_support.h", "ios/test_support.mm", ] + deps = [ + "../sdk:common_objc", + ] } } diff --git a/webrtc/test/ios/test_support.mm b/webrtc/test/ios/test_support.mm index 9a9035612a..a01b03c9f0 100644 --- a/webrtc/test/ios/test_support.mm +++ b/webrtc/test/ios/test_support.mm @@ -12,6 +12,8 @@ #include "webrtc/test/ios/test_support.h" +#import "webrtc/sdk/objc/Framework/Classes/Common/RTCUIApplicationStatusObserver.h" + // Springboard will kill any iOS app that fails to check in after launch within // a given time. Starting a UIApplication before invoking TestSuite::Run // prevents this from happening. @@ -60,6 +62,11 @@ static char **g_argv; // root view controller. Set an empty one here. [_window setRootViewController:[[UIViewController alloc] init]]; + // We want to call `RTCUIApplicationStatusObserver sharedInstance` as early as + // possible in the application lifecycle to set observation properly. + __unused RTCUIApplicationStatusObserver *observer = + [RTCUIApplicationStatusObserver sharedInstance]; + // Queue up the test run. [self performSelector:@selector(runTests) withObject:nil afterDelay:0.1]; return YES;