2013-04-28 72 views
0

我正在使用適用於Android的Facebook SDK。我正在製作一個約3天的應用程序,今天我想用不同的Facebook用戶帳戶來測試它。所以第一步是登錄,我要求額外的讀取權限(read_requests,read_mailbox),然後是發佈權限(manage_notifications)。當我以自己的身份登錄到應用程序時,一切正常,首先我看到一個帶有字段的webview,接下來我登錄並且facebook要求額外的權限,但是當我嘗試對不同的Facebook帳戶執行相同操作時(我的隊友帳戶)不起作用。 它看起來像這樣:我看到一個帶有登錄頁面的webview我記下名稱和密碼,單擊「登錄」,然後整個活動(包含webview)變爲空白(白色),logcat中沒有錯誤, webview,任何人都知道如何解決這個問題?登錄後登錄的活動會變得空白

+0

也許你應該之前新帳號登錄疏通Facebook的共享偏好從數據 - >數據 - > yourapp->共享偏好設置 – COvayurt 2013-04-28 18:47:32

+0

我認爲這不是一個問題,因爲我試圖卸載/安裝應用程序和清除應用程序的數據,然後登錄,但點擊「登錄」按鈕後,webview仍然空白 – user1275995 2013-04-28 20:45:35

+0

您是否正在跟隨隨SDK提供的SwitchUserSample中的代碼?它向您展示瞭如何使用Session類正確處理不同的帳戶。 – 2013-04-29 16:29:03

回答

0

我和你有類似的經歷。我通過以下方法解決了這個問題。

public class CustomWebViewClient extends WebViewClient{  
    @Override 
    public void onPageFinished(WebView view, String url) { 

     if(url.startsWith("https://m.facebook.com/dialog/oauth")){ 
      String redirectUrl = "http://www.mydomain.com/myReturnUrl"; 
      view.loadUrl(redirectUrl); 
      return; 
     } 
     super.onPageFinished(view, url); 
    }} 

,只是把它添加到您的WebView

webview.setWebViewClient(new CustomWebViewClient()); 
+0

在你能做到這一點之前,你必須首先檢查一下。 (app settings-> basic-> Mobile Web-> Enter the return_url) – 2013-08-21 09:13:24

+0

這似乎並不能解決問題。我在我的網站上實現了一個fblogin函數。但是,當我嘗試通過Web視圖使用它時,它不起作用。但是如果我通過手機瀏覽器使用它,它就可以工作。 – 2014-05-21 16:55:49