LinkedIn, SwiftyJSON . https://github.com/SwiftyJSON/SwiftyJSON
2015 LinkedIn API, / . r_basicprofile r_emailaddress , .
,
@IBAction func connectWithLinkedIn(sender: AnyObject) {
let url = NSString(string:"https://api.linkedin.com/v1/people/~:(id,industry,firstName,lastName,emailAddress,headline,summary,publicProfileUrl,specialties,positions:(id,title,summary,start-date,end-date,is-current,company:(id,name,type,size,industry,ticker)),pictureUrls::(original),location:(name))?format=json")
let permissions: [AnyObject] = [LISDK_BASIC_PROFILE_PERMISSION, LISDK_EMAILADDRESS_PERMISSION]
LISDKSessionManager.createSessionWithAuth(permissions, state: nil, showGoToAppStoreDialog: true, successBlock: { (success) -> () in
if LISDKSessionManager.hasValidSession() {
LISDKAPIHelper.sharedInstance().getRequest(url as String, success: {
response in
print(response)
print("successfully signed in")
dispatch_async(dispatch_get_main_queue(), { () -> () in
if let dataFromString = response.data.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) {
let result = JSON(data: dataFromString)
LISDKSessionManager.clearSession()
var picURL: String!
for stringInArray in result["pictureUrls"]["values"]{
let value = stringInArray.1.stringValue
print(value)
picURL = value
}
print(result["pictureUrls"]["values"].arrayValue)
print(result["specialties"].stringValue)
}
})
}, error: {
error in
LISDKAPIHelper.sharedInstance().cancelCalls()
LISDKSessionManager.clearSession()
print(error.localizedDescription)
})
}
print("success called!")
}, errorBlock: { (error) -> () in
print("%s", "error called!")
LISDKAPIHelper.sharedInstance().cancelCalls()
LISDKSessionManager.clearSession()
})
}