Как программно определить, включен ли iCloud на устройстве пользователя, если используется только NSUbiquitousKeyValueStore?

Я использую NSUbiquitousKeyValueStoreдля синхронизации некоторых данных о предпочтениях с iCloud. Я обнаружил, что если пользователь отключит элемент «Документ и данные» iCloud в «Настройках приложения», NSUbiquitousKeyValueStoreне сможет синхронизировать свои данные с iCloud. Итак, я хочу сначала проверить, включен ли этот параметр. Я нашел этот фрагмент кода:

    NSURL *ubiq = [[NSFileManager defaultManager] 
                   URLForUbiquityContainerIdentifier:nil];
    NSLog(@"url=%@",ubiq);
    if (!ubiq) {
        UIAlertView *av = [[UIAlertView alloc] initWithTitle:nil message:@"Please enable iCloud in Setting app" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [av show];
        return;

    }

Я хочу знать, является ли это единственным способом обнаружения, даже если я просто использую NSUbiquitousKeyValueStore(не хранилище документов iCloud). Есть ли лучшая альтернатива?

13
задан Cœur 31 March 2018 в 10:33
поделиться