1d5087a6cSŁukasz Kosmaty // Copyright 2015-present 650 Industries. All rights reserved. 2d5087a6cSŁukasz Kosmaty 3d5087a6cSŁukasz Kosmaty @objc 4d5087a6cSŁukasz Kosmaty public class EXDevLauncherBundleURLProviderInterceptor: NSObject { 5d5087a6cSŁukasz Kosmaty @objc 6d5087a6cSŁukasz Kosmaty public static var isInstalled: Bool = false { 7d5087a6cSŁukasz Kosmaty willSet { 8d5087a6cSŁukasz Kosmaty if isInstalled != newValue { 9d5087a6cSŁukasz Kosmaty swizzle() 10d5087a6cSŁukasz Kosmaty } 11d5087a6cSŁukasz Kosmaty } 12d5087a6cSŁukasz Kosmaty } 13d5087a6cSŁukasz Kosmaty swizzlenull14d5087a6cSŁukasz Kosmaty static private func swizzle() { 15d5087a6cSŁukasz Kosmaty EXDevLauncherUtils.swizzle( 16d5087a6cSŁukasz Kosmaty selector: #selector(RCTBundleURLProvider.guessPackagerHost), 17d5087a6cSŁukasz Kosmaty withSelector: #selector(RCTBundleURLProvider.EXDevLauncher_guessPackagerHost), 18d5087a6cSŁukasz Kosmaty forClass: RCTBundleURLProvider.self 19d5087a6cSŁukasz Kosmaty ) 20d5087a6cSŁukasz Kosmaty } 21d5087a6cSŁukasz Kosmaty } 22d5087a6cSŁukasz Kosmaty 23d5087a6cSŁukasz Kosmaty extension RCTBundleURLProvider { 24d5087a6cSŁukasz Kosmaty @objc EXDevLauncher_guessPackagerHostnull25d5087a6cSŁukasz Kosmaty func EXDevLauncher_guessPackagerHost() -> String? { 26d5087a6cSŁukasz Kosmaty // We set the packager host by hand. 27d5087a6cSŁukasz Kosmaty // So we don't want to guess the packager host, cause it can take a lot of time. 28*765b47daSTomasz Sapeta return nil 29d5087a6cSŁukasz Kosmaty } 30d5087a6cSŁukasz Kosmaty } 31