@@ -180,6 +180,7 @@ + (DelayedConsentInitializationParameters *)delayedInitParameters {
180180
181181static BOOL performedOnSessionRequest = false ;
182182
183+ static NSString * subscriptionId;
183184
184185// static property def to add developer's OSPermissionStateChanges observers to.
185186static ObservablePermissionStateChangesType* _permissionStateChangesObserver;
@@ -429,7 +430,6 @@ + (void)enterLiveActivity:(NSString * _Nonnull)activityId withToken:(NSString *
429430 return ;
430431 }
431432
432- NSString *subscriptionId = [OneSignalUserManagerImpl.sharedInstance addObserver: _subscriptionObserver].subscriptionId ;
433433 if (subscriptionId) {
434434 [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityEnter withUserId: subscriptionId appId: appId activityId: activityId token: token]
435435 onSuccess: ^(NSDictionary *result) {
@@ -439,9 +439,7 @@ + (void)enterLiveActivity:(NSString * _Nonnull)activityId withToken:(NSString *
439439 }];
440440 } else {
441441 _subscriptionObserver = [OSSubscriptionObserver new ];
442-
443442 [self addPendingLiveActivityUpdate: activityId withToken: token isEnter: true withSuccess: successBlock withFailure: failureBlock];
444-
445443 }
446444}
447445
@@ -463,7 +461,6 @@ + (void)exitLiveActivity:(NSString * _Nonnull)activityId withSuccess:(OSResultSu
463461 return ;
464462 }
465463
466- NSString *subscriptionId = OneSignalUserManagerImpl.sharedInstance .pushSubscription .subscriptionId ;
467464 if (subscriptionId) {
468465 [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityExit withUserId: subscriptionId appId: appId activityId: activityId]
469466 onSuccess: ^(NSDictionary *result) {
@@ -472,6 +469,7 @@ + (void)exitLiveActivity:(NSString * _Nonnull)activityId withSuccess:(OSResultSu
472469 [self callFailureBlockOnMainThread: failureBlock withError: error];
473470 }];
474471 } else {
472+ _subscriptionObserver = [OSSubscriptionObserver new ];
475473 [self addPendingLiveActivityUpdate: activityId withToken: nil isEnter: false withSuccess: successBlock withFailure: failureBlock];
476474 }
477475}
@@ -506,14 +504,16 @@ + (void)addPendingLiveActivityUpdate:(NSString * _Nonnull)activityId
506504}
507505
508506+ (void )executePendingLiveActivityUpdates {
507+
508+ subscriptionId = OneSignalUserManagerImpl.sharedInstance .pushSubscription .subscriptionId ;
509509 if (pendingLiveActivityUpdates.count <= 0 ) {
510510 return ;
511511 }
512512
513513 OSPendingLiveActivityUpdate * updateToProcess = [pendingLiveActivityUpdates objectAtIndex: 0 ];
514514 [pendingLiveActivityUpdates removeObjectAtIndex: 0 ];
515515 if (updateToProcess.isEnter ) {
516- [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityEnter withUserId: self .currentSubscriptionState.userId appId: appId activityId: updateToProcess.activityId token: updateToProcess.token]
516+ [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityEnter withUserId: subscriptionId appId: appId activityId: updateToProcess.activityId token: updateToProcess.token]
517517 onSuccess: ^(NSDictionary *result) {
518518 [self callSuccessBlockOnMainThread: updateToProcess.successBlock withResult: result];
519519 [self executePendingLiveActivityUpdates ];
@@ -522,7 +522,7 @@ + (void)executePendingLiveActivityUpdates {
522522 [self executePendingLiveActivityUpdates ];
523523 }];
524524 } else {
525- [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityExit withUserId: self .currentSubscriptionState.userId appId: appId activityId: updateToProcess.activityId]
525+ [OneSignalClient.sharedClient executeRequest: [OSRequestLiveActivityExit withUserId: subscriptionId appId: appId activityId: updateToProcess.activityId]
526526 onSuccess: ^(NSDictionary *result) {
527527 [self callSuccessBlockOnMainThread: updateToProcess.successBlock withResult: result];
528528 [self executePendingLiveActivityUpdates ];
@@ -741,6 +741,7 @@ + (void)init {
741741 [self startUserManager ]; // By here, app_id exists, and consent is granted.
742742 [self startInAppMessages ];
743743 [self startNewSession: YES ];
744+
744745 initDone = true ;
745746}
746747
0 commit comments