Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Message to end Live Activity does not close it on the device. #909

@dr-contributor

Description

@dr-contributor

Environment

  • Operating System version: python:3.12.10-slim Docker image running on MacOS
  • Firebase SDK version: 6.9.0
  • Firebase Product: cloud messaging
  • Python version: 3.12.10
  • Pip version: 25.0.1

The problem

Management of iOS live activities.
Currently I can successfully start a live activity using the sdk with the following message:

message = messaging.Message(
  apns=messaging.APNSConfig(
    live_activity_token=live_activity_token,
    payload=messaging.APNSPayload(
      aps=messaging.Aps(
        alert=messaging.ApsAlert(
          title="Live Activity Started",
          body="Your live activity has been started",
        ),
        custom_data = {
          "input-push-token": 1,
          "event": "start",
          "timestamp": int(time.time()),
          "content-state": {
              "myAttribute": False,
          },
          "attributes-type": "MyObjectAttributes",
          "attributes": {
              "name": "name",
          },
        },
      ),
      headers={
        "apns-priority": "5",
      },
    ),
  ),
  data={ 'type': 'mytype' },
  token=token
)

The issue appears when trying to end the live activity, it seems that the sent message has no effect and the live activity remains on the lock screen of the device. This is the message that is being sent:

message = messaging.Message(
  apns=messaging.APNSConfig(
    live_activity_token=live_activity_token,
    payload=messaging.APNSPayload(
      aps=messaging.Aps(
        alert=messaging.ApsAlert(
          title="Live Activity Ended",
          body="Your live activity has been ended",
        ),
        custom_data = {
          "event": "end",
          "timestamp": int(time.time()),
          "dismissal-date": int(time.time()),
          "content-state": {
              "myAttribute": False
          },
          "attributes-type": "MyObjectAttributes",
          "attributes": {
              "name": "name"
          },
        },
      ),
      headers={
        "apns-priority": "5",
      },
    ),
  ),
  data={ 'type': 'mytype' },
  token=token
)

All the responses of the messaging.send_each method are successful (response.success => True) but the live activity does not end.

Steps to reproduce:

Currently these are the steps to reproduce the issue:

  • Start a live activity with the start message
  • Send the end message via the messaging.send_each method
  • Check the responses, they should be successful
  • The live activity still displays on the device

PS: this might be an issue with Firebase itself and not with the sdk, but I am not entirely sure.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions