Azure / Azure/communication-ui-library-android

[v1.13.0 or v1.14.2] Ongoing call notification can be swiped away on Android 14 but not on Android 12

Open
#1,170 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
31
Forks
40
PR merge metrics
No merged PRs in 30d

Description

**Description of bug**
On Android 14, the ongoing call notification from the Azure Communication UI Library can be swiped away (dismissed) from the notification bar during an active call. However, when tested on Android 12, the ongoing call notification cannot be swiped away during an active call.
Additionally, On Android 12, the user can tap the ongoing call notification anytime to reopen the call screen and retain control, while on Android 14, once the ongoing call screen is closed and the notification is swiped away, the user loses all call controls even though the call continues in the background.

**To Reproduce**
Steps to reproduce the behavior:

Start an ongoing call using Azure Communication UI Library (version 1.13.0 or 1.14.0).

Observe the ongoing call notification in the notification bar.

Try to close all active apps (ongoing call screen) by tapping ||| button on android phone

Try to swipe/dismiss the notification.

On Android 14, the notification can be dismissed; on Android 12, it cannot be dismissed.

This bug is always reproducible on android 14 devices.
I used to initialized callComposite:

callComposite = CallCompositeBuilder()
.applicationContext(context)
.credential(credential)
.displayName("")
.callScreenOrientation(CallCompositeSupportedScreenOrientation.PORTRAIT)
.telecomManagerOptions(
CallCompositeTelecomManagerOptions(
CallCompositeTelecomManagerIntegrationMode.SDK_PROVIDED_TELECOM_MANAGER,
PHONE_ACCOUNT_ID
)
)
.build()
For accept incoming call uses:
callComposite?.accept(context, incomingCallId, getLocalOption())

**Expected behavior**
The expected behavior is consistent notification swipe behavior across Android versions. Ideally, the ongoing call notification should not be swipe-dismissable on Android 14, similar to the behavior on Android 12, to prevent accidental call termination or disruption.

**Screenshot**
Screenshot1: ongoing call screen, and just click on close all to close all recent task

![Image](https://github.com/user-attachments/assets/aa5395de-adec-4415-9766-e5828461c140)

Screenshot2: After closing ongoing call screen, on going call notification still showing, but it can also be swipe away from notification drawer.

![Image](https://github.com/user-attachments/assets/233f8cc4-75fc-47c5-a2b9-629aaa80ef5c)

Screenshot3: It was observed that if the ongoing call screen and the in-call notification are both closed, the call continues running on the device, leaving the user with no way to control or end it.

![Image](https://github.com/user-attachments/assets/8c090c3a-d4e6-49cb-8e77-765d32311515)

**AzureCommunicationUILibrary:**
- Version [ 1.13.0 or 1.14.0]

**Smartphone**
- Device: Samsung S23 (Android 14)
- API: Android 12 (API 31), Android 14 (API 34)
- Mobile App Version 10.0.5.3481

**Additional context**
Please check whether the notification channel or builder settings are consistent across Android versions, as system-level behavior may have changed in Android 14 regarding foreground services and notifications.

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the ongoing-call notification behavior on Android 12 (API 31) and Android 14 (API 34) using Azure Communication UI Library 1.13.0 or 1.14.0. Inspect the notification channel, notification builder, and foreground-service settings for version-dependent behavior; done means the active-call notification cannot be dismissed and call controls remain available after closing the call screen.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, azure, kotlin
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.