Обработка удаленного уведомления для приложения чата в iOS

ФОН

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

ЧТО Я ХОЧУ ДОСТИГНУТЬ

Как и в Whatsapp, после того, как я получил push-уведомление и включил режим полета, я все еще могу видеть содержимое сообщения, пока открываю приложение. Итак, я считаю, что он получил сообщение при получении уведомления.

ПРОБЛЕМА

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

ЧТО Я ПЫТАЛСЯ

Я вручную загрузил сообщение, когда приложение появилось, но это не похоже на протестированное поведение в Whatsapp. Я попробовал эту стороннюю библиотеку сокетов, но iOS убила службу прослушивания после закрытия приложения, это неприменимо к тому, что Я хочу построить.

МОЙ ВОПРОС

Если все еще используется push-уведомление или удаленное уведомление в фоновом режиме, можно ли каким-либо образом обработать push-уведомление, когда приложение не запущено?

Я также узнал об Apple PushKit, я не уверен, разрешено ли это только для приложений, предоставляющих VoIP. Кто-нибудь знает, примет ли Apple мое приложение для публикации в их AppStore, если я использую PushKit только для обмена текстовыми сообщениями?

Главный вопрос, как WhatsApp может этого добиться? Он также использует PushKit?


person Jack Kyeteo    schedule 22.06.2017    source источник


Ответы (2)


На самом деле вы не можете справиться с чем-то, когда ваше приложение убито, поэтому простое решение для вас - сохранить все данные push-уведомлений на сервере, получить их с сервера при запуске приложения и удалить их, как только вы их получите. Я думаю, что Whatsapp справится с этим таким же образом.

person Arthur Sahakyan    schedule 22.06.2017
comment
Не спекулируйте, проводите исследования. - person Cadoiz; 04.02.2021

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

Используйте сервер XMPP для интеграции с живым чатом.

https://code.tutsplus.com/tutorials/building-a-jabber-client-for-ios-xmpp-setup--mobile-7190

Что такое XMPP, и как я могу использовать его в приложении чата iOS?

person Hasya    schedule 28.06.2017