NotificationCompat.CallStyle


class NotificationCompat.CallStyle : NotificationCompat.Style


Helper class for generating large-format notifications that include a caller and required actions, and indicate an incoming call. If the platform does not provide large-format notifications, this method has no effect. The user will always see the normal notification view. This class is a "rebuilder": It attaches to a Builder object and modifies its behavior, like so:

Notification notification = new NotificationCompat.Builder(mContext)
    .setSmallIcon(R.drawable.new_post)
    .setStyle(
            new Notification.CallStyle.forIncomingCall(caller, declineIntent, answerIntent))
    .build();
Note that for CallStyle Notifications on API versions before 31 to be ranked as they are in API versions 31+, they must be associated with a foreground service. Additionally, CallStyle Notifications on API versions before 31 can achieve the similar ranking by marking the Notification as colorized, using setColorized.

Summary

Constants

const Int

Call type for incoming calls.

const Int

Call type for ongoing calls.

const Int

Call type for calls that are being screened.

const Int

Unknown call type.

Public constructors

Creates a CallStyle linked to a notification builder.

Public functions

java-static NotificationCompat.CallStyle
forIncomingCall(
    person: Person,
    declineIntent: PendingIntent,
    answerIntent: PendingIntent
)

Creates a CallStyle for an incoming call.

java-static NotificationCompat.CallStyle
forOngoingCall(person: Person, hangUpIntent: PendingIntent)

Creates a CallStyle for an ongoing call.

java-static NotificationCompat.CallStyle
forScreeningCall(
    person: Person,
    hangUpIntent: PendingIntent,
    answerIntent: PendingIntent
)

Creates a CallStyle for a call that is being screened.

NotificationCompat.CallStyle

Sets an optional color to be used as a hint for the Answer action button's color.

NotificationCompat.CallStyle

Sets an optional color to be used as a hint for the Decline or Hang Up action button's color.

NotificationCompat.CallStyle
setIsVideo(isVideo: Boolean)

Sets whether the call is a video call, which may affect the icons or text used on the required action buttons.

NotificationCompat.CallStyle
setVerificationIcon(verificationIcon: Bitmap?)

Sets an optional icon to be displayed with text as a verification status of the caller.

NotificationCompat.CallStyle
@RequiresApi(value = 23)
setVerificationIcon(verificationIcon: Icon?)

Sets an optional icon to be displayed with text as a verification status of the caller.

NotificationCompat.CallStyle
setVerificationText(verificationText: CharSequence?)

Sets optional text to be displayed with an icon as a verification status of the caller.

Inherited functions

From androidx.core.app.NotificationCompat.Style
Notification?

If this Style object has been set on a notification builder, this method will build that notification and return it.

Unit

Link this rich notification style with a notification builder.

Constants

CALL_TYPE_INCOMING

Added in 1.10.0
const val CALL_TYPE_INCOMING = 1: Int

Call type for incoming calls. See EXTRA_CALL_TYPE.

CALL_TYPE_ONGOING

Added in 1.10.0
const val CALL_TYPE_ONGOING = 2: Int

Call type for ongoing calls. See EXTRA_CALL_TYPE.

CALL_TYPE_SCREENING

Added in 1.10.0
const val CALL_TYPE_SCREENING = 3: Int

Call type for calls that are being screened. See EXTRA_CALL_TYPE.

CALL_TYPE_UNKNOWN

Added in 1.10.0
const val CALL_TYPE_UNKNOWN = 0: Int

Unknown call type. See EXTRA_CALL_TYPE.

Public constructors

CallStyle

Added in 1.10.0
CallStyle()

CallStyle

Added in 1.10.0
CallStyle(builder: NotificationCompat.Builder?)

Creates a CallStyle linked to a notification builder.

Parameters
builder: NotificationCompat.Builder?

the notification builder to link

Public functions

forIncomingCall

Added in 1.10.0
java-static fun forIncomingCall(
    person: Person,
    declineIntent: PendingIntent,
    answerIntent: PendingIntent
): NotificationCompat.CallStyle

Creates a CallStyle for an incoming call. This notification will have a decline and an answer action, will allow a single custom action, and will have a default content text for an incoming call.

Parameters
person: Person

the person displayed as the caller the person also needs to have a non-empty name associated with it

declineIntent: PendingIntent

the intent to be sent when the user taps the decline action

answerIntent: PendingIntent

the intent to be sent when the user taps the answer action

forOngoingCall

Added in 1.10.0
java-static fun forOngoingCall(person: Person, hangUpIntent: PendingIntent): NotificationCompat.CallStyle

Creates a CallStyle for an ongoing call. This notification will have a hang up action, will allow up to two custom actions, and will have a default content text for an ongoing call.

Parameters
person: Person

the person displayed as being on the other end of the call the person also needs to have a non-empty name associated with it

hangUpIntent: PendingIntent

the intent to be sent when the user taps the hang up action

forScreeningCall

Added in 1.10.0
java-static fun forScreeningCall(
    person: Person,
    hangUpIntent: PendingIntent,
    answerIntent: PendingIntent
): NotificationCompat.CallStyle

Creates a CallStyle for a call that is being screened. This notification will have a hang up and an answer action, will allow a single custom action, and will have a default content text for a call that is being screened.

Parameters
person: Person

the person displayed as the caller the person also needs to have a non-empty name associated with it

hangUpIntent: PendingIntent

the intent to be sent when the user taps the hang up action

answerIntent: PendingIntent

the intent to be sent when the user taps the answer action

setAnswerButtonColorHint

Added in 1.10.0
fun setAnswerButtonColorHint(color: @ColorInt Int): NotificationCompat.CallStyle

Sets an optional color to be used as a hint for the Answer action button's color. The system may change this color to ensure sufficient contrast with the background. The system may choose to disregard this hint if the notification is not colorized.

setDeclineButtonColorHint

Added in 1.10.0
fun setDeclineButtonColorHint(color: @ColorInt Int): NotificationCompat.CallStyle

Sets an optional color to be used as a hint for the Decline or Hang Up action button's color. The system may change this color to ensure sufficient contrast with the background. The system may choose to disregard this hint if the notification is not colorized.

setIsVideo

Added in 1.10.0
fun setIsVideo(isVideo: Boolean): NotificationCompat.CallStyle

Sets whether the call is a video call, which may affect the icons or text used on the required action buttons.

setVerificationIcon

Added in 1.10.0
fun setVerificationIcon(verificationIcon: Bitmap?): NotificationCompat.CallStyle

Sets an optional icon to be displayed with text as a verification status of the caller.

setVerificationIcon

Added in 1.10.0
@RequiresApi(value = 23)
fun setVerificationIcon(verificationIcon: Icon?): NotificationCompat.CallStyle

Sets an optional icon to be displayed with text as a verification status of the caller.

setVerificationText

Added in 1.10.0
fun setVerificationText(verificationText: CharSequence?): NotificationCompat.CallStyle

Sets optional text to be displayed with an icon as a verification status of the caller.