Переключить камеру в OpenTok Swift SDK

Я использую OpenTok SDK для видеозвонков в своем приложении. Мне нужно реализовать функцию переключения камеры одним нажатием кнопки. Но это не работает.

Я использую

@IBAction func cameraButtonAction(_ sender: Any) { publisher?.cameraPosition = AVCaptureDevice.Position.back } при нажатии кнопки

И издатель создается при подключении сеанса

  func sessionDidConnect(_ session: OTSession) {
    print("The client connected to the OpenTok session.")
    let settings = OTPublisherSettings()
    settings.name = UIDevice.current.name 
    guard let publisher = OTPublisher(delegate: self, settings: settings) else {
        return
    }

    var error: OTError?
    session.publish(publisher, error: &error)
    guard error == nil else {
        print(error!)
        return
    }

    guard let publisherView = publisher.view else {
        return
    }
    let screenBounds = UIScreen.main.bounds
    publisherView.frame = CGRect(x: screenBounds.width - 150 - 20, y: screenBounds.height - 150 - 20, width: 150, height: 150)
    view.addSubview(publisherView)
}

1 ответ

Решение

Похоже, вы не устанавливаете издателя. Это простая ошибка, может случиться с кем угодно.

guard let publisher = OTPublisher(delegate: self, settings: settings) else {
    return
}

self.publisher = publisher

Добавьте эту строку в свой код, в котором вы инициализируете издателя.

Другие вопросы по тегам