Обновлен Facebook SDK до 0.7.0 - теперь он не распознает SDKApplicationDelegate в AppDelegate или LinkShareContent? - PullRequest
1 голос
/ 26 июня 2019

Я использую Facebook SDK, чтобы пользователи могли обмениваться цитатами с Facebook в моем приложении Swift. Моя оригинальная (и рабочая) версия использовала следующее в AppDelegate:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        SDKApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)
        incrementAppRuns()
        return true
    }

и использовал следующее в соответствующем контроллере вида:

    func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
        return SDKApplicationDelegate.shared.application(app, open: url, options: options)
    }

public func Share(){
        let myContent = LinkShareContent(url: URL(string: "https://example.com")!, quote: shareText)
        let shareDialog = ShareDialog(content: myContent)
        shareDialog.mode = .native
        shareDialog.failsOnInvalidData = true
        shareDialog.completion = { result in
            // Handle share results
        }

        do {
            try shareDialog.show()
        }
        catch{
        }
    }

Однако после обновления SDK до 0.7.0 с помощью Cocoa Pod компилятор теперь не распознает ни SDKApplicationDelegate в AppDelegate, ни LinkShareContent

Кто-нибудь знает, почему это или что я должен изменить, чтобы это заработало (опять же)? Заранее спасибо. Я попытался просмотреть документацию Facebook SDK, но не смог найти никакого ответа.

1 Ответ

0 голосов
/ 26 июня 2019

После некоторого дальнейшего траления, проб и ошибок выясняется, что SDKApplicationDelegate был переименован в ApplicationDelegate - внесение этого изменения решило эту проблему. Я также реализовал подход, описанный здесь:

https://github.com/facebook/facebook-swift-sdk/issues/438

По сути, используя FBSDKShareKit и используя ShareLinkContent вместо LinkShareContent.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...