2012-10-17 43 views
2

我試圖更新我的應用程序從iOS SDK 3.0到SDK 3.1,但我有問題得到URL方案後綴工作。我的應用有幾個不同的SKU,並且已經成功使用3.1版SDK之前的「ipad」和「iphone」的方案後綴。在iOS iOS SDK 3.1中使用URL Scheme後綴嗎?

在實現3.1 SDK並獲得讀取權限時,Facebook應用程序不再將我發回給我的應用程序(這是在iOS6中未使用集成的Facebook登錄時)。我注意到,如果我刪除了URL Scheme Suffix,則登錄過程按預期工作,並在對權限說「OK」之後將其發送回我的應用程序。只需將info.plist更改爲不包含後綴即可使用;添加它回來打破它。

我的問題是:URL後綴是否適用於3.1更新的任何人?我無法確認他們是否在工作。更新確實似乎已經改變了認證流程,但我不明白爲什麼這會被故意刪除。另外,這個Facebook上的相關bug? http://developers.facebook.com/bugs/183527235116115

最後,由於我不覺得我可以更新,直到解決此問題,不立即更新SDK的後果是什麼?我討厭我的應用程序中斷,因爲舊的身份驗證方法被終止。 Facebook是否有舊版認證無法使用的路線圖?

+0

感謝下面的傢伙的解決方案;希望他們會對一些人有所幫助。事實證明,我遇到的問題是我使用的第三方插件錯誤地實現了URL方案後綴的結果。儘管我在登錄時傳遞後綴,但插件在更新到Facebook 3.1後沒有正確使用後綴。他們已經修復了它,現在它正在工作。 – kromenak

+0

您可以在這裏看到更新的2015版Xcode 6的詳細說明http://stackoverflow.com/a/18480723/1780492 – BootMaker

回答

1

檢查這些東西:

  • 你在你的應用程序Info.plist文件

  • 的FacebookAppID屬性你有你的應用程序中定義的URL方案。該方案必須包含您要使用的後綴。

  • 您在調用FB API之前設置URL Scheme後綴。

  • 的URL方案後綴只包含小寫字母(無特殊字符,如破折號,等等;無空格)

我堅持的最後一個點一天左右!

編輯:在plist中FacebookID應該叫FacebookAppID(字符串類型)

RGDS

0

你究竟是如何去有關創建和打開會話?

我認爲你必須使用一個兩步走的方法:

  1. initWithAppID:權限:urlSchemeSuffix:tokenCacheStrategy:
  2. openWithCompletionHandler:

我不知道,這已經從3.0變到3.1版本的SDK雖然。

相關問題