ioswidgetliveactivity

Live Activities created but not visible in notification center


I've implemented the live activities, and getting no issues so far. It's getting created, but is not visible in notification center, and no error is being thrown

I'm using XCode 15.0 beta 8 and testing on real device iOS 17.0

Below is my NotificationLiveActivity.swift file

import ActivityKit
import WidgetKit
import SwiftUI

struct NotificationAttributes: ActivityAttributes {
    public struct ContentState: Codable, Hashable {
        var title: String
        var label: String
    }
    
    var id: String
}

@available(iOS 16.2, *)
struct NotificationLiveActivity: Widget {
    var body: some WidgetConfiguration {
        ActivityConfiguration(for: NotificationAttributes.self) { context in
            Text(context.state.title)
        } dynamicIsland: { context in
            DynamicIsland {
                // Expanded UI goes here.  Compose the expanded UI through
                // various regions, like leading/trailing/center/bottom
                DynamicIslandExpandedRegion(.leading) {
                    Text(context.state.title)
                }
                DynamicIslandExpandedRegion(.trailing) {
                    Text(context.state.label)
                }
                DynamicIslandExpandedRegion(.bottom) {
                    Text(context.state.title)
                }
            } compactLeading: {
                Text(context.state.title)
            } compactTrailing: {
                Text(context.state.label)
            } minimal: {
                Text(context.state.title)
            }
            .widgetURL(URL(string: "http://www.apple.com"))
            .keylineTint(Color.red)
        }
    }
}

Here's the snippet where activity is created:

func startLiveActivity(title: String, label: String) {
        let attributes = NotificationAttributes(id: "")
        let state = NotificationAttributes.ContentState(
            title: title, label: label
        )
        do {
            stopwatchActivity = try Activity<NotificationAttributes>.request(
                attributes: attributes, contentState: state, pushType: nil)
            NSLog("activity id: \(stopwatchActivity?.id ?? "")")
            
            NSLog("description: \(stopwatchActivity?.content.description ?? "")")
        } catch(let e) {
            NSLog("error: \(e)")
        }
    }

Logs screenshot:

Logs screenshot

It's expected to show live activity in notification center


Solution

  • Unchecking Copy only when installing fixed the issue

    enter image description here

    Update 1:

    If the above solution doesn't work, restart your iPhone