【问题标题】:Access variable of Viewcontroller in AppDelegateAppDelegate中Viewcontroller的访问变量
【发布时间】:2018-06-26 19:24:58
【问题描述】:

正如问题所说,我试图在 AppDelegate.swift 中访问 ViewController 的变量。

在func applicationWillTerminate(_ application: UIApplication){} 中,我想访问我的ViewController 中的WebSocket 对象并执行socket.disconnect(),这样当我的应用程序将要关闭时,套接字就会断开连接。

我已经在网上搜索了很多,但在这种情况下似乎没有任何帮助。

【问题讨论】:

  • 如何呈现你想要访问的viewController?是否有任何导航控制器,或者它们只是呈现?

标签: ios swift sockets appdelegate starscream


【解决方案1】:

尝试在视图控制器中添加观察者:

NotificationCenter.default.addObserver(self,
      selector: #selector(applicationWillTerminate),
      name: .UIApplicationWillTerminate,
      object: nil)

使用回调:

@objc func applicationWillTerminate() {
    // Disconnect socket

}

另外我认为当应用程序终止时一切都会断开

【讨论】:

  • 它有点断开连接但是当我刚刚终止应用程序时,我的服务器端点上发生了错误。我只想在应用程序终止时彻底断开连接。
  • 现在没关系,问题似乎出在我的 wsserver 而不是客户端。你的解决方案是对的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-13
  • 1970-01-01
  • 2017-10-01
相关资源
最近更新 更多