VKCOM / vk-ios-sdk

iOS library for working with VK API, authorization through VK app, using VK functions
MIT License
298 stars 165 forks source link

-canOpenURL: failed for URL: "vkauthorize://authorize" - error: "The operation couldn’t be completed. (OSStatus error -10814.)" #536

Closed kkadyrbekov closed 6 years ago

kkadyrbekov commented 6 years ago

Вот такая ошибка выходит. все делегаты, схемы настроил. wakeUpSession прописал. В AppDelegate вызвал функцию openUrl, прописал VKSdk.processOpen..... Приложение даже не запрашивает для входа.

-canOpenURL: failed for URL: "vkauthorize://authorize" - error: "The operation couldn’t be completed. (OSStatus error -10814.)"

0xstragner commented 6 years ago

vkauthorize://authorize Дергается внутри сдк, чтобы открыть приложение ВК для авторизации. Обратно твоё приложение будет открываться через ссылку, которую ты указал у себя в Info.plist. (id{your_app_id}}. Чтобы начать процесс авторизации тебе нужно дернуть метод [VKSdk authorize:@[]]

kkadyrbekov commented 6 years ago

я нашел причину. Оказалось что нужно открывать SafariController самому, в функции vkSdkShouldPresent.

func vkSdkShouldPresent(_ controller: UIViewController!) {
        if (self.presentedViewController != nil) {
            self.dismiss(animated: true, completion: {
                self.present(controller, animated: true, completion: {
                })
            })
        } else {
            self.present(controller, animated: true, completion: {
            })
        }
    }