Что касается push-уведомлений в Worklight?
- Push-уведомление было выполнено и отлично работало в моем приложении. (Я использовал модуль push-уведомлений на рабочем месте IBM LINK)
- Был сценарий, который я испытал во время уведомления, полученного в приложении андроид устройства.
- Push-уведомление получено отлично во всех ситуациях, кроме случаев, когда я нахожусь на экране входа в систему (когда я нахожусь на экране входа в систему приложения, push-уведомление не получено в моем приложении).
Вопрос:
- Почему push-уведомление не получено в приложении?
- Какова архитектура / поток выполнения на стороне клиента (на стороне устройства), с помощью которого я могу понять, когда приемник Push Notification (Broad Cast Receiver) в устройстве готов к приему уведомления, а когда он не может получать уведомления?
1 ответ
Это ожидаемое поведение.
Вы реализовали основанные на источнике события гнойные уведомления. В этом типе push-уведомлений вы должны сначала войти в систему, чтобы получать уведомления. Вот почему, пока вы находитесь на экране входа в систему, вы не получите уведомление.
Если вы используете Worklight 6.2 или MobileFirst Platform 6.3, вы можете использовать теги или широковещательные уведомления, которые не требуют входа в систему.
Вы можете узнать больше об этом в центре разработчиков платформы IBM MobileFirst.
Вот краткое изложение возможных сценариев:
Приложение закрыто - уведомление поступает на устройство - открыв приложение / нажав на уведомление в панели уведомлений, вы получите экран входа в систему. После входа в систему вы фактически увидите полезную нагрузку (в зависимости от того, как вы это выбрали, это чисто применимо). Вы не увидите фактическую полезную нагрузку, потому что вы не хотите, чтобы пользователь B, например, видел полезную нагрузку пользователя A.
Приложение открыто - вы вошли в систему, но приложение находится в фоновом режиме - уведомление поступает на устройство - нажав на уведомление или перенеся приложение на передний план, поскольку вы уже вошли в систему, вы увидите полезную нагрузку
Приложение открыто - вы НЕ вошли в систему - на устройство приходит уведомление - вы не сможете увидеть полезную нагрузку, потому что вы не вошли в систему.
Приложение открыто - вы вошли в систему, и приложение находится на переднем плане - на устройство приходит уведомление - вы сразу увидите полезную нагрузку (согласно вашему прикладному коду)