Приложение iOS 12 Xcode 10: openURL: параметры: сбой - PullRequest
0 голосов
/ 26 сентября 2018

Недавно я заметил некоторые проблемы с моим приложением, вызывающие предупреждение при загрузке в Appstore:

Неправильная конфигурация документа - Приложения на основе документов должны поддерживать либо браузер документов (UISupportsDocumentBrowser)= YES) или реализовать Open In Place (LSSupportsOpeningDocumentsInPlace = YES / NO).Посетите https://developer.apple.com/document-based-apps/ для получения дополнительной информации.

Мое приложение реагирует на пользовательский набор расширений в своем списке свойств типов документов и работало до iOS 12 / Xcode 10.

При добавлении «Поддерживает открытие документов на месте» в YES в .plist и «Поддерживает просмотр документов» в «НЕТ» происходит сбой с таким сообщением:

'Приложение имеет ключ LSSupportsOpeningDocumentsInPlace, но не реализует приложение:openURL: параметры: для делегата '

Мое приложение поддерживает iOS 8 и выше и работает нормально, отвечая на:

(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

в моем AppDelegate.

Когда я добавляюновый

- (void)openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenExternalURLOptionsKey, id> *)options completionHandler:(void (^)(BOOL success))completion 

все равно вылетает с ошибкой выше ..

1 Ответ

0 голосов
/ 30 января 2019

добавьте это в свой делегат приложения:

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options {
    return YES;
}

, поскольку ios 12 требуется, если вы также добавили LSSupportsOpeningDocumentsInPlace в ваш info.plist

...