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

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

Я никоим образом не использую 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);

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

введите описание изображения здесь

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

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


person casolorz    schedule 25.02.2019    source источник
comment
это особенность ОС Android, настроенная компанией Huawei. Короче говоря, отключить его нельзя.   -  person fangzhzh    schedule 05.03.2019
comment
Но почему некоторые другие уведомления этого не показывают?   -  person casolorz    schedule 05.03.2019
comment
Потому что вы много тестировали, и Huawei считает, что ваше уведомление может раздражать конечного пользователя (в данном случае вас самих). Я много раз видел это, когда тестировал свое приложение.   -  person fangzhzh    schedule 05.03.2019
comment
Ой, интересно, так это происходит только во время тестирования? Да ладно, их телефон даже не поддерживает MediaStyle, так что все и так запутано.   -  person casolorz    schedule 05.03.2019
comment
да, это отстой.   -  person fangzhzh    schedule 05.03.2019
comment
Вы хотели добавить это к ответу, чтобы я мог сделать его как можно более правильным, поскольку вы упомянули это первым?   -  person casolorz    schedule 08.03.2019
comment
Спасибо, я это оценил.   -  person fangzhzh    schedule 10.03.2019


Ответы (4)


Это особенность ОС Android, настроенная компанией Huawei. Короче говоря, отключить его нельзя.

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

Вы не должны беспокоиться об этом????

person fangzhzh    schedule 09.03.2019

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

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

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

person Nick Fortescue    schedule 08.03.2019
comment
Спасибо, я ценю информацию. - person casolorz; 08.03.2019

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

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

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

person Roman Bush    schedule 01.03.2019
comment
В этом телефоне есть Android 5.1, у которого нет каналов, также я использую NotificationCompat в своем фактическом коде, я просто использовал обычный в этом примере, чтобы убедиться, что библиотека совместимости не является проблемой. - person casolorz; 02.03.2019

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

person Martin Zeitler    schedule 08.03.2019