2015-11-13 39 views
1

目前我有一個Twitter用戶名登錄,用於驗證用戶是否正常,爲用戶確認完整登錄所需的所有適當信息。解析使用Twitter初始失敗登錄

然後,我打電話給[PFTwitterUtils logInWithBlock:...]方法,以便通過Parse驗證用戶並在_User中填充新用戶。 (我不使用這種方法來呈現Twitter登錄對話框,因爲我無法讓它呈現自己)。

這裏是陌生的一部分: 在我第一次啓動應用程序,我與Twitter登錄,然後調用logInWithBlock方法收到以下錯誤:

Something went wrong: The operation couldn’t be completed. (NSURLErrorDomain error -1012.) 

奇怪的是,如果我再次重新啓動應用程序,則完全不會發生此問題。唯一的區別是,在重新啓動後,我相信以前使用的Twitter帳戶信息(通過瀏覽器而不是帳戶)被保存在設備上。當我再次啓動應用程序時,我已將其設置爲重新加載以前的會話:這次[PFTwitterUtils logInWithBlock:...]的工作就像一個魅力,創建一個新用戶等,沒有任何問題。

注意:我的Twitter應用的設置中保存了一個有效的URL作爲回調URL。另外,我希望這是明確指出,建立正確完成給定的,它適用於第二日誌中細

這裏是我使用的登錄代碼:我沉不住氣

// Login with Twitter through Parse 
      [PFTwitterUtils logInWithBlock:^(PFUser *user, NSError *error) { 
       if (error != nil) { 
        // Something went wrong 
        NSLog(@"Something went wrong: %@", [error localizedDescription]); 
        breakLogin = YES; 
        [self invalidateSignInTimer]; 
        return; 
       } 
       else if (user.isNew){ 
        userObjectID = user.objectId; 
        [user saveInBackground]; 
        NSLog(@"New User"); 
       } 
       else if (!user.isNew) { 
        userObjectID = user.objectId; 
        [user saveInBackground]; 
        NSLog(@"Returning User. Welcome Back!"); 
       } 
      }]; 

和爲什麼會發生這種想法。如果有人有任何想法,請讓我知道 - 謝謝!

UPDATE: 我注意到,這似乎是發生的原因是這樣的: 我第一次嘗試登錄沒有PFUser,而第二次出現似乎是一個保存[PFUser currentUser],這使得[PFTwitterUtils...]方法登錄並創建新用戶。

但我仍然不知道如何避免失敗的第一次,而無需手動創建一個新的PFUser,然後與Twitter,然後PFTwitterUtils登錄...

更新2 我已經解決了這個問題與我在下面提供的答案。我將這件事留下,因爲我認爲這可能會在未來幫助其他人。

+0

我真的很感激,如果有人可以幫忙。我發佈了3個不同的「Parse」Q論壇,並沒有一個人回到我身邊 –

回答

0

所以經過無關的研究後,我似乎找到了一個解決方案。

  • 首先,我確信,我所有的框架文件(SKDs,標題等)是最新的由項目和庫鏈接都刪除所有的引用。

  • 其次,我確信,所有鍵和祕密是重拍,在我 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  • 更新最後我做了雙重檢查,我通過正確解析過的網站上設立Twitter authentication去了。

我發現了什麼是唯一的解決辦法休息在回調URL

  • 在「設置」下指定回調URL在你的Twitter應用程序,我不得不取消選中鎖定回調URL的選項,儘管由Twitter的建議。 (如下圖所示) enter image description here

我是有點不高興,這一切麻煩的東西,所以平凡衍生的,但我至少是高興的是,解決方案實際上沒有太多太多麻煩解決。希望這個答案可以幫助那些在類似問題上掙扎的人。