Странный вопрос разрешить / запретить на телефоне Huawei 5.1 при отображении уведомления - PullRequest
0 голосов
/ 25 февраля 2019

Получается, что телефоны Huawei с 5.1 не могут отображать MediaStyle уведомления, поэтому, исправляя это, я сделал очень простой тест уведомлений и получил странный вопрос с вопросом Allow App Name to push messages to the notification panel.

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

Как сделать так, чтобы это не показывалось?

Это код:

 Notification notification = new Notification.Builder(getApplicationContext())
                .setSmallIcon(R.drawable.ic_launcher_background)
                .setContentTitle("Track title")
                .setContentText("Artist - Album")
                .setOngoing(true)

                .addAction(R.drawable.ic_add_black_24dp, "fwd", pi)
                .addAction(R.drawable.ic_android_black_24dp, "fwd", pi)
                .addAction(R.drawable.ic_archive_black_24dp, "fwd", pi)
                .addAction(R.drawable.ic_arrow_back_black_24dp, "fwd", pi)
                .addAction(R.drawable.ic_aspect_ratio_black_24dp, "fwd", pi)
                .addAction(R.drawable.ic_fast_forward_black_24dp, "fwd", pi)
                .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.vectors_525058875))
                .setAutoCancel(false)


                .build();
        notificationManager.notify(300, notification);

Это скриншот.

enter image description here

Что я делаю не так?Я пытался убрать все действия, которые не помогли.Вытащил заголовок и контекст, это не помогло.Вытащил большой значок, автоматическая отмена, текущая и т. Д., Не помогло.

Обратите внимание, что я никоим образом не использую Push, и, похоже, это не связано с этим.Также я использовал вспомогательные библиотеки для создания уведомлений, но в этом примере я не просто убедился, что проблема не в этом.

Ответы [ 4 ]

0 голосов
/ 10 марта 2019

Это настраиваемая функция Android OS от Huawei.Короче говоря, вы не можете отключить его.

Я много видел, когда тестировал свое приложение.ОС Huawei считает, что ваше уведомление может раздражать конечного пользователя (в данном случае вас самих), потому что это часто случалось.

Тебе не нужно это беспокоить?

0 голосов
/ 08 марта 2019

Версия ОС Android от Huawei имеет пользовательскую функцию, которая пытается распознавать приложения, делающие раздражающее количество уведомлений.

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

В любом случае, это функция ОС, вы ничего не можете сделатьчтобы избежать этого, за исключением того, что вы не спам с вашими уведомлениями.К сожалению, во время разработки и тестирования вы часто будете запускать много уведомлений, и ОС обнаружит, что ваше приложение является спамом.Не беспокойся об этом.Пока ваше приложение хорошо работает для обычных пользователей, этого не должно происходить.

0 голосов
/ 08 марта 2019

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

0 голосов
/ 01 марта 2019

Вы используете устаревший конструктор.Вы должны указать канал.Например:

Notification.Builder builder = new NotificationCompat.Builder(context,"MyPerfectApplication")

В противном случае вы используете неизвестный канал, возможно, вы попытаетесь вставить системный канал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...