2012-03-21 41 views
0

你好朋友我實現登錄Facebook的帳戶,在我的Android應用程序,但問題是這個功能是不工作的所有手機,如果我在2.2移動應用程序運行其工作正常但當我嘗試在HTC手機2.3版本登錄頁面即將到來,突然消失。Facebook的登錄是不是在所有Android設備工作

public class TestLoginListener implements DialogListener { 
    public void onComplete(Bundle values) { 
     testAuthenticatedApi(); 
    } 
    public void onFacebookError(FacebookError e) { 
     e.printStackTrace(); 
    } 
    public void onError(DialogError e) { 
     e.printStackTrace(); 
    } 
    public void onCancel() { 
    } 
} 

public boolean testAuthenticatedApi() { 

    if (!authenticatedFacebook.isSessionValid()) return false; 
    try { 
     Log.d("Tests", "Testing request for 'me'"); 
     String response1 = authenticatedFacebook.request("me") 

     JSONObject obj = Util.parseJson(response1); 

     fbid=obj.getString("id"); 
     String name=obj.getString("name"); 
     fbfirstname=obj.getString("first_name"); 
     fblastname=obj.getString("last_name"); 
     fbemail=obj.getString("email"); 
     } 
} 

回答

1

是的,我想我知道原因。我已經用實施Facebook來劈砍,並且如果您的設備已經安裝了Facebook應用程序並且您目前已登錄,則通常會發生您所描述的情況。然後,當您嘗試登錄時,它會在消失之前顯示登錄的一小段時間。我猜你的HTC有fb應用程序,有人登錄,而其他手機沒有安裝fb應用程序。我認爲這是因爲當您嘗試登錄時,fb服務器未被ping通。它改爲使用fb應用程序。

我想出的解決方案是將代碼更改爲不使用SSO(Single Sign On)。我確信其他人會不同意這種方法,但我選擇不使用SSO,它工作正常。爲此,請使用authorize(FORCE_DIALOG_AUTH)

我做了一些挖掘,發現related問題。

相關問題