Remoteview не применяется в фоновом режиме

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

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

        NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
            .setSmallIcon(R.drawable.doggy_downgrade3)
            .setVibrate(new long[] { 1000, 1000, 1000, 1000, 1000 })
            .setContentTitle("Doggy")
            .setContentText(messageBody)
            .setAutoCancel(true)
            .setSound(defaultSoundUri)
            .setNumber(1)
            .setPriority(Notification.PRIORITY_MAX)
            .setContent(remoteViews)
            .setContentIntent(pendingIntent);

Выше приведен мой код для создания уведомления.


person Philip Kim    schedule 14.02.2018    source источник
comment
Вы нашли для этого какое-нибудь решение?   -  person Ravi Vaniya    schedule 09.07.2019


Ответы (1)


Вам нужно установить два разных представления, одно - это пользовательское представление содержимого, а другое - представление большого содержимого, и установить его следующим образом:

NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(getApplicationContext())
            .setSmallIcon(icon)
            .setCustomContentView(contentViewSmall)
            .setCustomBigContentView(contentViewBig)
            .setContentTitle("Custom Notification")
            .setContentIntent(contentIntent)
            .setAutoCancel(true)
            .setWhen(when);

    mNotificationManager.notify(1, notificationBuilder.build());

Также прочтите мой блог о Пользовательские макеты для push-уведомлений

person Darshan Pania    schedule 14.02.2018
comment
Что, если мне придется отображать один и тот же макет, несмотря ни на что? - person Ravi Vaniya; 09.07.2019
comment
передать один и тот же RemoteView обоим методам setCustomContentView и setCustomBigContentView объекта NotificationCompat.Builder. - person Darshan Pania; 10.07.2019
comment
Да, я пробовал, но это не работает, кстати, этот ответ stackoverflow.com/a/56948772/4696610 решил мою проблему. - person Ravi Vaniya; 10.07.2019