Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9 Co-authored-by: Nucleic <[email protected]>
This commit is contained in:
@@ -28,6 +28,14 @@ final class LiveActivityManager {
|
|||||||
private var pendingState: NucleicSessionAttributes.ContentState?
|
private var pendingState: NucleicSessionAttributes.ContentState?
|
||||||
private var updateTask: Task<Void, Never>?
|
private var updateTask: Task<Void, Never>?
|
||||||
|
|
||||||
|
/// Set by `RemoteStore` to ship the activity's APNS push token to the paired Macs (and to tell
|
||||||
|
/// them it ended). The Macs use the token to keep this glance fresh over APNs while the phone
|
||||||
|
/// is backgrounded and its sync socket is suspended (UX_IOS §5.3).
|
||||||
|
var onPushToken: ((_ token: String, _ activityID: String) -> Void)?
|
||||||
|
var onActivityEnded: ((_ activityID: String) -> Void)?
|
||||||
|
/// Streams the activity's per-activity APNS update token (it can rotate); cancelled on end.
|
||||||
|
private var tokenObservation: Task<Void, Never>?
|
||||||
|
|
||||||
/// Reconcile the Activity with the current session set.
|
/// Reconcile the Activity with the current session set.
|
||||||
func sync(hostName: String, sessions: [WireSessionSummary]) {
|
func sync(hostName: String, sessions: [WireSessionSummary]) {
|
||||||
guard ActivityAuthorizationInfo().areActivitiesEnabled else { return }
|
guard ActivityAuthorizationInfo().areActivitiesEnabled else { return }
|
||||||
|
|||||||
Reference in New Issue
Block a user