Я передаю userInfo NSDictionary таким образом:
[[WKExtension sharedExtension] scheduleBackgroundRefreshWithPreferredDate:[NSDate dateWithTimeIntervalSinceNow:10]
userInfo:[NSDictionary dictionaryWithObjectsAndKeys:@"timer", @"reason", nil]
scheduledCompletion:^(NSError * _Nullable error) { ... }
Но когда задача получена, task.userInfo имеет значение nil:
- (void)handleBackgroundTasks:(NSSet<WKRefreshBackgroundTask *> *)backgroundTasks {
for (WKRefreshBackgroundTask * task in backgroundTasks) {
WKApplicationRefreshBackgroundTask *backgroundTask = (WKApplicationRefreshBackgroundTask*)task;
if (task.userInfo) {
NSDictionary *userInfo = (NSDictionary *)task.userInfo;
NSString *reason = [userInfo objectForKey:@"reason"];
NSLog(@"reason: %@", reason);
} else {
NSLog(@"no userInfo %@", task.debugDescription);
}
Что мне здесь не хватает?
Спасибо, Пит