Xcode 12: как исправить ошибку archiveRootObject:toFile: устарела

Я использую бета-версию Xcode 12 (бета-версия 12.0 (12A6159)). В моем проекте используется Firebase. Когда я пытаюсь его построить, появляются ошибки, например:

'archiveRootObject:toFile:' is deprecated: first deprecated in iOS 12.0 - Use +archivedDataWithRootObject:requiringSecureCoding:error: and -writeToURL:options:error: instead

Xcode говорит мне исправить эту проблему в папке "GoogleDataTransport" в файле в этой строке:

[NSKeyedArchiver archiveRootObject:self toFile:[GDTCORStorage archivePath]];

Я пытался тупо следить за тем, что мне подсказывает сообщение об ошибке, поэтому я начал писать, что говорит ошибка. Я записал:

[NSKeyedArchiver archivedDataWithRootObject:<#(nonnull id)#> requiringSecureCoding:<#(BOOL)#> error:<#(NSError *__autoreleasing  _Nullable * _Nullable)#>];

Я понятия не имею, что мне нужно написать, чтобы заполнить пробелы. Кто-нибудь знает?

1 ответ

Решение

Даже если мы обновим Firebase SDK до последней версии, ошибки все равно будут появляться (с бета-версией Xcode 12 (12A6159)). Я сообщил об этой проблеме в службу поддержки Firebase. Они сказали мне, что это похоже на проблему с CocoaPods. Однако они дали мне обходной путь.

Я обновлю этот пост, когда у меня будет больше информации.

Другие вопросы по тегам