Вход в LinkedIn с использованием LinkedinSwift не работает внезапно - PullRequest
0 голосов
/ 24 января 2019

Я использую LinkedinSwift в прошлом году, но теперь перенаправление в приложение не работает, нет допустимой ошибки сеанса. Но браузер работает нормально. Доступны все решения. Заранее спасибо. Мой код ниже

linkedinHelper.authorizeSuccess({ [unowned self] (lsToken) -> Void in
    self.linkedinHelper.requestURL("https://api.linkedin.com/v2/me", requestType: LinkedinSwiftRequestGet, success: { (response) -> Void in
        print("Request success with response: \(response)")
        DispatchQueue.main.async() {
            //let data: NSData = response.data.data(using: String.Encoding.utf8)! as NSData
            do {
                let json = response.jsonObject
                if let dictionaryJson = json as NSDictionary?{

                    print(dictionaryJson)

                }
            } catch {
                print(error)
            }
            //                    print(response?.statusCode)
        }
        // self.writeConsoleLine("Request success with response: \(response)")
    }) { [unowned self] (error) -> Void in
        // self.writeConsoleLine("Encounter error: \(error.localizedDescription)")
    }
    // self.writeConsoleLine("Login success lsToken: \(lsToken)")
    }, error: { [unowned self] (error) -> Void in

        //  self.writeConsoleLine("Encounter error: \(error.localizedDescription)")
    }, cancel: { [unowned self] () -> Void in

        // self.writeConsoleLine("User Cancelled!")
})
}

Ответы [ 2 ]

0 голосов
/ 14 марта 2019

LinkedIn - закрытая поддержка SDK с 1 марта 2009 года.Визит https://engineering.linkedin.com/blog/2018/12/developer-program-updates

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

вот простое решение

    import UIKit
import LinkedinSwift
class ViewController: UIViewController {
    private let linkedinHelper = LinkedinSwiftHelper(configuration: LinkedinSwiftConfiguration(clientId: "Your client id", clientSecret: "yout clientSecret", state: "DLKDJF46ikMMZADfdfds", permissions: ["r_basicprofile", "r_emailaddress"], redirectUrl: "your project or your company any project url"))

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    @IBAction func btnClicked(_ sender: UIButton) {

        linkedinHelper.authorizeSuccess({ (token) in

            print(token)
            //This token is useful for fetching profile info from LinkedIn server
            self.linkedinHelper.requestURL("https://api.linkedin.com/v1/people/~:(id,first-name,last-name,email-address,picture-url,picture-urls::(original),positions,date-of-birth,phone-numbers,location)?format=json", requestType: LinkedinSwiftRequestGet, success: { (response) -> Void in

                print(response)
                //parse this response which is in the JSON format
                // self.linkedinHelper.logout() //logout session
                 let cookie = HTTPCookie.self
                let cookieJar = HTTPCookieStorage.shared

                for cookie in cookieJar.cookies! {
                    // print(cookie.name+"="+cookie.value)
                    cookieJar.deleteCookie(cookie)
                }
            }) {(error) -> Void in

                print(error.localizedDescription)
                //handle the error
            }

        }, error: { (error) in

            print(error.localizedDescription)
            //show respective error
        }) {
            //show sign in cancelled event
        }

    }

}

и добавьте метод в Appdelegate

import LinkedinSwift   
    func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {

        if LinkedinSwiftHelper.shouldHandle(url) {
            return LinkedinSwiftHelper.application(app, open: url, sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String, annotation: options[UIApplication.OpenURLOptionsKey.annotation])
        }

        return true
    }

просто нужно добавить модуль: -

pod 'LinkedinSwift'
...