Hızlı bir şekilde facebook giriş/kayıt fonksiyonu oluşturmak için uğraşıyorum. Bir öğretici arıyordum, ancak hiçbir şey bulamadım. Bu yüzden kendim yapmaya çalışıyorum. Çalışıyor gibi görünüyor, ama neden facebookName, Cinsiyet ve imajımı veritabanına kaydetmiyor? Simülatörde saklıyor ama ios 8 cihazımı kullanırken değil mi?facebook ayrıcalıklı ol hızlı kayıt
i bu günlük mesajını alıyorum "Kullanıcı kaydoldum ve Facebook üzerinden giriş yapmış!", Ve yeni bir kullanıcı ayrıştırma sınıfına eklenir, ancak adı, resim ve cinsiyet ...
@IBAction func login(sender: UIButton!) {
var permissionArray = ["user_about_me", "user_relationships", "user_birthday", "user_location"]
PFFacebookUtils.initializeFacebook()
PFFacebookUtils.logInWithPermissions(permissionArray, block: { (user: PFUser!, error: NSError!) in
println(user)
if user == nil {
println(error.localizedDescription)
} else {
if user.isNew {
var userQuery = PFUser.query()
userQuery.getObjectInBackgroundWithId(PFUser.currentUser().objectId) {
(userObject: PFObject!, error: NSError!) -> Void in
var fbRequest = FBRequest.requestForMe()
fbRequest.startWithCompletionHandler { (connection: FBRequestConnection!, result:AnyObject!, error: NSError!) in
if error == nil {
//FACEBOOK DATA IN DICTIONARY
var userData = result as NSDictionary
var faceBookId = userData.objectForKey("id") as NSString
var faceBookName = userData.objectForKey("first_name") as NSString
var faceBookMiddle = userData.objectForKey("middle_name") as NSString
var faceBookGender = userData.objectForKey("gender") as NSString
var url:NSURL = NSURL.URLWithString(NSString(format:"https://graph.facebook.com/%@/picture?width=320", faceBookId))
var err: NSError?
var imageData :NSData = NSData.dataWithContentsOfURL(url, options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)
var imageFile = PFFile(name: "image.jpg", data: imageData) as PFFile
println(userData)
userObject.setObject(faceBookName, forKey: "name")
userObject.setObject(imageFile, forKey: "file")
userObject.setObject(faceBookGender, forKey: "gender")
userObject.saveInBackground()
var sharedInstance:userSingleton = userSingleton.sharedInstance
sharedInstance.userName = (userObject.objectForKey("name") as NSString)
sharedInstance.userGender = (userObject.objectForKey("gender") as NSString)
(userObject.objectForKey("file") as PFFile).getDataInBackgroundWithBlock {
(theImageData: NSData!, error: NSError!) -> Void in
println(error)
if error == nil {
sharedInstance.userImage = UIImage(data:theImageData)
}
self.performSegueWithIdentifier("LoginSegue", sender: self)
}
}
}
}
println("User signed up and logged in through Facebook!")
} else {
println("User logged in through Facebook!")
}
}
})
}
}