From f87dfdfea022e9a86b65e27bdafdd0f73823a071 Mon Sep 17 00:00:00 2001 From: Pascal Hartig Date: Mon, 6 Sep 2021 06:04:39 -0700 Subject: [PATCH] Read port configuration from UserDefaults Summary: This allows us to configure a simulator to use a non-default port pair by using the `defaults` mechanism. For instance, this can be done by running ``` xcrun simctl spawn booted defaults write "Apple Global Domain" "com.facebook.flipper.ports" -string "9088,9089" ``` Reviewed By: lblasa, timur-valiev Differential Revision: D30731874 fbshipit-source-id: 689d60b1c392f36dceef1b3c3cfa0c88f54a7a82 --- iOS/FlipperKit/SKEnvironmentVariables.m | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/iOS/FlipperKit/SKEnvironmentVariables.m b/iOS/FlipperKit/SKEnvironmentVariables.m index 0574ac59c..fc692a44d 100644 --- a/iOS/FlipperKit/SKEnvironmentVariables.m +++ b/iOS/FlipperKit/SKEnvironmentVariables.m @@ -35,7 +35,14 @@ static int const DEFAULT_SECURE_PORT = 8088; return envInt > 0 ? envInt : fallback; } + (NSString*)getFlipperPortsVariable { + // Try to retrieve from environment first. NSString* value = NSProcessInfo.processInfo.environment[@"FLIPPER_PORTS"]; + // If empty, check defaults instead. + if ([value length] == 0) { + value = [[NSUserDefaults standardUserDefaults] + stringForKey:@"com.facebook.flipper.ports"]; + } + return value; } @end