Disconnect() устарел: вместо этого используйте свойство shouldEstablishDirectChannel

При взгляде на метод disconnect() и его описание он говорит следующее в документах

Отключите текущее соединение данных FIRMessaging. Это останавливает любые попытки подключения к FIRMessaging. Вызов этого на уже отключенном клиенте - это no-op.

Но глядя на свойство shouldEstablishDirectChannel

Если установлено значение YES, Firebase Messaging автоматически установит прямой канал на основе сокетов на сервер FCM. Вам нужно включить это только в том случае, если вы отправляете восходящие сообщения или получаете сообщения, не содержащие APNS, только для данных в приложениях с приоритетом. Значение по умолчанию: NO.

Кажется, что они не делают то же самое, но я могу ошибаться. Может ли кто-нибудь уточнить это для меня?

Ответ 1

Так что я нашел это.

функции disconnect() и connect() больше не нужны. Вы можете просто превратить bolean в true и установить соединение.

Я прислонил голову к стене, потому что если это предупреждение об ошибке.

func applicationDidEnterBackground(_ application: UIApplication) {
        Messaging.messaging().disconnect()
        print("Disconnected from FCM.")
    }

в

        func applicationDidEnterBackground(_ application: UIApplication) {
        Messaging.messaging().shouldEstablishDirectChannel = false
        print("Disconnected from FCM.")
    }

и то же самое для соединения, превращая bolean в true. так как теперь есть объяснение этого изменения, и я должен был бы сделать это. Я также тестировал это на устройстве, и я все еще получаю push-уведомления.