Background 동작 처리

Connection-oriented 방식을 사용하는 PoC 의 경우 application 이 background 로 전활될 경우 필요하다면 연결을 끊어주어야 합니다.

NUGU 회원 연동 방식의 PoC 에서 OAuth token 발급 결과 scope 에 “device:S.I.D” 가 포함된 경우에만 connection-oriented 방식을 사용합니다.

Background 연결 종료

복사성공!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
NotificationCenter.default.addObserver(
            self,
            selector: #selector(willResignActive(_:)),
            name: UIApplication.willResignActiveNotification,
            object: nil
        )

NotificationCenter.default.addObserver(
    self,
    selector: #selector(didBecomeActive(_:)),
    name: UIApplication.didBecomeActiveNotification,
    object: nil
)

func willResignActive(_ notification: Notification) {
    // 연결 종료
    NuguCentralManager.shared.stopReceiveServerInitiatedDirective()
}

func didBecomeActive(_ notification: Notification) {
    // 재연결
    NuguCentralManager.shared.startReceiveServerInitiatedDirective()
}