Как NotificationHub удаляет регистрационные устройства

В диагностической консоли в Visual Studio в разделе Azure->NotificationHub после того, как я зарегистрировал свое устройство в концентраторе, по умолчанию указана дата истечения срока действия 9999 лет. Если я удалил свое приложение, регистрация все еще существует. Позже переустанавливаю приложение, в список добавлено новое творение регистрации. Старая регистрация никогда не удаляется.

Нужно ли вручную устанавливать дату истечения срока действия? Это звучит нелогично, потому что приложение все еще использует его. Как Центр уведомлений может удалить старые зарегистрированные устройства, когда приложение было удалено.


person LittleFunny    schedule 30.10.2017    source источник


Ответы (1)


Как Центр уведомлений может удалить старые зарегистрированные устройства, когда приложение было удалено.

Насколько мне известно, вам нужно явно вызвать соответствующий метод для удаления регистрации из центров уведомлений Azure. И при удалении приложения не возникает никаких событий.

В старой документации по управлению регистрацией:

Важно отметить, что регистрация является временной. Аналогично содержащимся в них дескрипторам PNS, срок регистрации истекает. Вы можете установить срок действия регистрации в Центре уведомлений, но не более 90 дней. Это ограничение означает, что их необходимо периодически обновлять, а также то, что они не должны быть единственным хранилищем важной информации. Этот автоматический срок действия также упрощает очистку после удаления мобильного приложения.

Хотя новая документация утверждает следующее:

Важно отметить, что срок регистрации и установки по умолчанию больше не истекает.

Таким образом, вы можете просто оставить старые регистрации, тогда концентраторы уведомлений будут очищать регистрации по мере получения отзывов PNS о просроченных или недействительных регистрациях. Или вы можете указать время жизни для регистрации и периодически обновлять/создавать его при запуске вашего приложения. И просроченные регистрации будут удалены автоматически.

If I removed my application, the registration still exist. Later I re-install the application, a new creation of the registration added to the list. The old registration never get deleted.

При создании регистрации я бы рекомендовал вам сгенерировать уникальный идентификатор устройства в качестве идентификатора регистрации вашего устройства (например, installationId для модели установки, RegistrationId для модели регистрации), и вы можете вызвать соответствующий метод (например, hub.DeleteRegistrationAsync) для создания или обновления вашего регистрация устройства. Для создания уникального идентификатора устройства вы можете обратиться к здесь. Кроме того, вы можете обратиться к Управление регистрацией.

person Bruce Chen    schedule 31.10.2017
comment
Ссылка больше не работает - person Athif Shaffy; 30.03.2021