2015-01-13 70 views
4

我發送了另一個版本的我的應用程序,允許用戶通過Facebook登錄。當然,我使用官方的Facebook iOS SDK。蘋果拒絕了應用程序10.6,因爲Facebook打開Safari登錄

但是,蘋果兩次拒絕我的應用程序,原因如下:

該應用程序打開一個網頁在移動Safari瀏覽器進行登錄,然後返回用戶的應用程序。用戶應該能夠在不首先打開Safari的情況下登錄。

我想獲得更多的信息和評論者的回答是:

謝謝您的答覆。我們檢查了您的應用程序版本3.2.1,並且當用戶點擊Facebook登錄時,用戶將被帶到移動Safari,然後返回到應用程序。

它提供較差的用戶體驗並且不符合指南。

謝謝您的答覆。允許用戶在不重定向到移動Safari的情況下登錄應用程序是適當的。

爲什麼只有我的應用程序出現這個錯誤,當幾十個應用程序使用Facebook iOS SDK這種方式並沒有被拒絕?

在iOS iOS SDK中有沒有辦法在app內部打開登錄頁面?

+0

你是寫在objective-c或swift和使用標準的Facebook SDK? – jackslash

+0

您可以使用'FBLoginView'來登錄用戶並避免將他踢入移動Safari – Lefteris

+0

'爲什麼只有我的應用出現這個錯誤,當幾十個應用使用Facebook iOS SDK這樣並且不會被拒絕?'他們當然可以被拒絕。當他們的開發者上次更新他們的應用程序時,他們就沒有這樣做指南可能會更改。 – HAS

回答

4

同樣的問題發生了Google+ SDK,該應用可能會被拒絕出於同樣的原因:

原因

10.6 :蘋果和我們的客戶高度重視通過界面進行的簡單,精緻,創造性和深思熟慮。他們需要更多的工作,但 值得。蘋果公司樹立了一個高標準如果你的用戶界面很複雜或者不夠好,它可能會被拒絕 ----- 10。6 -----

我們發現了以下問題與您的應用程序的用戶界面:

該應用程序會打開Safari移動網頁創建一個帳戶或登錄 在Google+帳戶,然後返回用戶到應用程序。 用戶應該能夠創建一個帳戶或登錄,而無需首先打開 Safari。

所以最好的解決辦法是通過內嵌的WebView移動服務器端OAuth 2.0,其中SDK不會讓你自動處理(如Facebook的SDK),至少要等到這些軟件開發工具包不發出更新以處理嵌入式WebView用例。

0

Facebook SDK for iOS提供了各種登錄體驗,以便您的應用可以用來驗證某人。這link包括所有的信息,你需要知道,以便在您的iOS應用程序中實現Facebook登錄。或檢查ray wenderlich教程Facebook教程iOS:如何使用Facebook的新圖API從你的iPhone應用程序

2

現在,蘋果制定了他們的規則嚴格。

你可以在官方Facebook文檔here找到你的問題的答案。

「嵌入的WebView登錄對話框」

6

的Facebook SDK 4.0+

FBSDKLoginManager *login = [FBSDKLoginManager new]; 
if (![UIApplication.sharedApplication canOpenURL:[NSURL URLWithString:@"fb://"]]) 
{ 
    login.loginBehavior = FBSDKLoginBehaviorWeb; 
} 

這將防止通過Safari瀏覽器打開。

+0

對於Facebook SDK 3.21+?任何? – machei

+0

它沒有爲我工作。它還有什麼需要它來工作? –

+0

@Zheref是否在方法'application openURL:sourceApplication:annotation'中添加了'[FBSDKApplicationDelegate.sharedInstance application:application openURL:url sourceApplication:sourceApplication annotation:annotation]'? –

相關問題