Ваш вызов bookmarkDataWithContentsOfURL:
неверен в нескольких отношениях:
Подпись выглядит следующим образом:
+ (NSData *)bookmarkDataWithContentsOfURL:(NSURL *)bookmarkFileURL error:(NSError * _Nullable *)error;
Во-первых, первый параметр имеет тип NSURL*
, не NSString*
. Затем вы полностью пропускаете параметр ошибки (несмотря на определение переменной для него). Наконец, этот метод является методом класса в NSURL
, а не NSData
(NSData*
- это тип возвращаемого значения).
Итак, во-первых, укажите путь к файлу в NSURL*
:
NSURL* bookmarkUrl = [NSURL URLWithString:filepathh];
Затем вызовите функцию, используя правильные аргументы:
NSData *bookmarkk = [NSURL bookmarkDataWithContentsOfURL:bookmarkUrl error:&error];
Вы должны проверить возвращаемое значение по nil
- если оно nil
, то ошибка произошла, и информация об ошибке будет содержаться внутри error
.
Документация весьма полезна.
Ваш звонок на URLByResolvingBookmarkData:options:relativeToURL:bookmarkDataIsStale:error:
имеет аналогичные проблемы: вы если пропущено несколько параметров, первый параметр должен быть NSURL
, et c. Опять же, документация должна помочь.