2012-10-16 76 views
1

我使用ShareKit將任何圖像發佈到Facebook。Facebook從Safari瀏覽器註銷,但不在iPhone中的應用程序中

所以我從前幾天面臨一個問題。從Safari授權應用程序後,當我從Safari註銷它也不是在應用程序中註銷。我正在使用單點登錄(SSO)功能。

和我檢查相同的功能在Android中工作正常。他們也使用SSO。當他們從Facebook應用程序註銷時,他們也將在應用程序中註銷。

是否有任何代碼需要添加。請讓我知道。

謝謝。

+0

也許iPhone應用程序不是直接與Web瀏覽器直接對話,或者iPhone應用程序正在緩存用戶/密碼 – Yicanis

+0

您好哪種方法可用於註銷..? –

+0

@Yicanis您好,感謝您的回覆。你可以請解釋我如何Android直接與瀏覽器交談爲什麼不是iPhone? – user1011291

回答

0

在iPhone上使用Web視圖時,它不會與瀏覽器共享會話cookie。因此你的WebView是孤立的。這就是爲什麼當您在Safari中註銷Facebook時,您的應用仍然保持登錄狀態。 根據您啓動瀏覽器的方式,您可能在Android中遇到同樣的問題。如果簡單地使用常規的瀏覽器意圖,則基本上共享相同的cookie,因此如果您註銷其中一個,它將從另一箇中註銷。

+0

我不使用網絡視圖我打開直接Safari登錄Facebook然後它給我的權限發佈任何應用程序。但是我從Safari註銷,它也不會在應用程序仍然登錄時註銷。 – user1011291

0

您應該使用UITableView並且還可以將註銷UIButton放入UITableView單元中。

將此密碼寫入UIButton click event。

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
[[defaults facebook removeObjectForKey:@"FBAccessTokenKey"]; 
[defaults removeObjectForKey:@"FBExpirationDateKey"]; 
[defaults synchronize]; 
+0

這不適用於Safari。它僅適用於inApp瀏覽器。 – LightNight

0

終於,當您在Android或iPhone上使用瀏覽器或Safari瀏覽器登錄時,我發現了自己的答案。 併發布任何內容。然後從瀏覽器註銷或Safari瀏覽器,它不是也從應用程序中註銷我們實施Facebook在牆上張貼任何東西。兩種情況下他們都在進行相同的操作。

但我仍然有疑問,如果Facebook應用程序在你的Android或iPhone設備可用,因此有發生不同的操作:(我要上也搜索。

感謝您的答案和幫助我。

+0

請接受您自己的答案或其他人的答案,以幫助其他人解決同樣的問題。 – Yicanis

+0

我相信albattran和我發佈在你的問題上的評論是正確的答案。在這種情況下,接受albattran的答案就足夠了。 – Yicanis

相關問題