Как открыть веб-просмотр, когда запускается func в appdelegate? - PullRequest
0 голосов
/ 18 мая 2019

В appDelegate у меня есть func, который получает Boolen, когда приложение открывается. Если Boolen == True, приложение должно открыть webView. Как я могу сослаться на viewcontroller, который инициализирует webView? Как создать веб-представление, которое будет видно после того, как приложение получит ответ от сервера?

Thx.

// это файл appDelegate

 func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
    let handled = ApplicationDelegate.shared.application(app, open: url, options: options)

       struct jsonR: Codable{ 
          let ads_enabled: Bool
        }
        print(url)


    Alamofire.request("https://appgootop.com))").responseJSON { response in

        if let data = response.data, let utf8Text = String(data: data, encoding: .utf8) {
            let product: jsonR = try! JSONDecoder().decode(jsonR.self, from: data)
            //print("Data: \(utf8Text)")
            print(product.ads_enabled)

            if product.ads_enabled == false{
                let url = URL(string: "google.com")!


                 }

            }
    }

    return handled
 }

1 Ответ

0 голосов
/ 20 мая 2019

Создайте класс (UIViewController), который содержит WebView, и вызовите его после того, как ваш сервер вернет ответ .....

class WebViewContainer : UIViewController {
      open var link: String {
              didSet{ webView.request(link)}
      }

      let webView: UIWebView = {
          let webView =// initialize your webView here
      }()


      override fun viewDidLoad() {
              super.viewDidLoad()

              view.addSubview(webView)
               // add constraints here
      }
  }

И использовать его после ответа сервера следующим образом:

let webViewVC = WebViewContainer()
window = UIWindow(frame: UIScreen.main.bounds)
window.makeKeyAndVisible()
window.rootViewController = webViewVC
webViewVC.link = // assign your link here
...