Push-уведомление на Android Jelly Bean OS

Мы заметили, что в Jelly Bean OS есть опция «Показать оповещения» в разделе «Информация о приложении».

Мы внедряем push-уведомления для нашего приложения, где мы спрашиваем пользователя, разрешают ли они push-уведомления при первом запуске приложения.
Поскольку в версиях до Jelly Bean (JB) не было никаких глобальных настроек уведомления, мы включили ON / OFF уведомления в нашем приложении в меню настроек. Однако, поскольку устройства JB имеют настройку уведомлений за пределами приложения, которое пользователь может переключать, теперь нам нужно будет отслеживать 2 переключателя (один за пределами приложения и один внутри приложения).

Какая рекомендуемая передовая практика для уведомлений на устройствах JB? Есть ли API, который мы можем использовать, чтобы мы знали, включен ли пользователь «Уведомления» или нет за пределами нашего приложения?

Спасибо.

Я не уверен на 100%, но я не думаю, что вам нужно будет отслеживать оба переключателя. Я бы предположил, что тот, который находится в области System -> Apps, переопределит все, что вы делаете. Так:

Ваше приложение включено, приложение для системы включено – уведомление включено!

Ваше приложение включено, системное приложение отключено – уведомление отключено!

Ваше приложение отключено, приложение для системы включено – уведомление отключено!

Я бы предложил написать простой тестовый пример, чтобы проверить его. Создайте приложение, которое пытается запустить уведомление, запустите его, убедитесь, что вы получили уведомление. Отклоните уведомление, снимите флажок «Показывать уведомления» для своего тестового приложения и запустите его снова. Я склонен полагать, что NotificationManager просто игнорирует ваш запрос, чтобы показать уведомление, если пользователь отключил уведомления для вашего приложения. Вероятно , вам не нужно ничего делать в своем приложении, чтобы поддержать новую функцию os.