Hello again Nextcloud Talk Team,
We have identified a reproducible issue affecting calls between Android and iPhone clients.
Environment:
Nextcloud Talk iOS: 24.0.1 (latest)
iOS: 26.5
Nextcloud Talk Android client (latest available version)
Issue is consistently reproducible
Problem description:
Calls between devices running the same platform work correctly:
Android ↔ Android — works normally.
iPhone ↔ iPhone — works normally.
The issue only occurs when calls involve different platforms:
iPhone → Android — issue occurs.
Android → iPhone — issue occurs.
During such calls, the iOS client successfully receives or initiates the call, joins the conversation room, and starts the WebRTC session establishment process. However, a few seconds after successfully joining the call, the Nextcloud Talk application on iPhone unexpectedly restarts or crashes.
As a result, the call is interrupted or becomes unstable.
Observed behavior in logs:
The following sequence is repeatedly observed during problematic calls:
Joining room for call true
Joined room successfully
Start call in NCCallController
Join call in NCCallController
Did join call in NCCallController
Start pulling internal signaling messages
A few seconds later, the log shows:
Starting com.nextcloud.Talk, version 24.0.1
This indicates that the application process is being restarted after the call has already been successfully established.
Additional log entries observed during failed attempts include:
Could not join call, retrying
Force reconnect
CallKit provider end call action
CallKit provider end call action for token (null)
Expected behavior:
Calls between Android and iPhone clients should be as stable as calls between devices running the same platform.
Actual behavior:
During Android-to-iPhone or iPhone-to-Android calls, the iOS client may restart or crash shortly after successfully joining the call.
Additional observation:
Because Android<->Android and iPhone<->iPhone calls work correctly, the issue appears to be related specifically to interoperability between Android and iOS clients.
Possible areas involved may include:
WebRTC signaling
SDP negotiation
ICE candidate handling
Codec negotiation
CallKit integration
PushKit integration
Cross-platform call state synchronization
Please investigate whether this is a known issue and advise if additional diagnostic information is required.
We can provide complete iOS debug logs upon request.