iOS 9/10 -> как проверить свободное / доступное пространство - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь проверить свободное доступное пространство на iOS 9 и выше в задании C. Для iOS 11 это просто: NSURLVolumeAvailableCapacityForImportantUsageKey Это отлично работает!Я получаю 26 ГБ.

Но для iOS 9/10 я не знаю, как это сделать.Я пробую эту функцию:

    //Get free space on the mobile
-(uint64_t)getFreeDiskspace {
    uint64_t totalSpace = 0;
    uint64_t totalFreeSpace = 0;
    NSError *error = nil;
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error];

    if (dictionary) {
        NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize];
        NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize];
        totalSpace = [fileSystemSizeInBytes unsignedLongLongValue];
        totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue];
        NSLog(@"Memory Capacity of %llu MiB with %llu MiB Free memory available.", ((totalSpace/1024ll)/1024ll), ((totalFreeSpace/1024ll)/1024ll));
    } else {
        NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]);
    }

    return totalFreeSpace;
}

Но результат неправильный, я получаю 18 ГБ для того же устройства.

У вас есть идеи?

спасибо :)1010 *

...