2016-09-27 46 views
0

我對swift有點新,可以使用一些幫助。我正在成功運行Facebook SDK圖形請求,並將其片段保存到Parse上的數據庫中。問題是,如果用戶不允許他們的電子郵件被閱讀,我的應用程序崩潰,因爲對象是空的。這是我的代碼:Facebook崩潰與圖中的空電子郵件

FBSDKGraphRequest(graphPath: "me", 
           parameters: ["fields": "id, name,friends, first_name, last_name, picture.type(large), email, gender,taggable_friends"]) 
       .start(completionHandler: { (connection, result , error) -> Void in 

        let data:[String:AnyObject] = result as! [String : AnyObject] 
        print(data) 
        PFUser.current()!["fb_id"] = data["id"] as? String 
        PFUser.current()!["name"] = data["name"] as? String 

        PFUser.current()!["email"] = data["email"] as! String 
        PFUser.current()!["gender"] = data["gender"] as! String 
        PFUser.current()?.saveInBackground() 

有人可以幫我編輯電子郵件行,說如果它是空的不要試圖強制保存它?

回答

0

一種方式是安全地拆開包裝可選在斯威夫特的標準方式:

if let email = data["email"] as? String { 
    PFUser.current()!["email"] = email 
} 
相關問題