2012-01-23 19 views
3

我想獲取Android賬戶的Facebook ID。如果可能的話,想使用Facebook SDK來做一些事情,比如發佈在牆上。獲取已註冊Android賬戶的Facebook ID

我如何從AndroidAccounts獲取信息?

目前我可以通過accoutManager獲取我的Gmail地址。

感謝

回答

1

如果你希望你的應用程序做一些事情在你需要他的授權用戶的facebook的。 您需要使用Facebook API,因爲您的應用需要向用戶請求權限。 這是Facebook API的鏈接:https://developers.facebook.com/docs/mobile/android/build/

如果您還有其他問題,請隨時提問。

+1

是的,我知道但是可以使用AccountMAnager中的已註冊帳戶嗎?因爲我想要使用比Facebook更多的內容,所以如果他必須連接每個帳戶,那麼對用戶來說將會非常無聊。 – Gp2mv3

+0

據我所知,你不能這樣做,因爲與Facebook的每一次交談必須通過一個應用程序,你必須註冊你的Facebook帳戶(如創建一個頁面)。 使用使用Facebook的移動應用程序就像在Facebook內使用應用程序一樣。每個應用程序都有自己的令牌,它是您發送/接收數據時必須擁有的app_id。如果你的用戶在他的手機上有一個Facebook帳戶,那麼我認爲他只需要給你的應用程序facebook第一次使用權限,之後他可以自由使用它。 – Elad92

2

你如何得到你的Gmail帳戶地址? AccountManager.getAccountsByType( 「com.google」)?如果您收到您的Gmail帳戶,您也可以通過的AccountManager類讓你的Facebook帳戶,如果它是在設備上,只需更改您的代碼:

Account[] accounts = AccountManager.get(this).getAccounts(); 
for (Account account: accounts) { 
    String accountEmail = account.name; 
} 

,然後調試。如果您的Facebook帳戶列在設備上的同步帳戶下(菜單>設置>帳戶&同步),它應該出現在此帳戶數組中。然後,您可以限制該方法使用AccountManager的getAccountsByType方法,該方法將接受Facebook帳戶作爲String值(可能類似於「com.facebook」)檢索您的Facebook帳戶ID的任何類型。

+0

它適用於Twitter,但不適用於Facebook,保存的值是郵件地址。我將使用Elad92的方法(使用SSO和Facebook API) – Gp2mv3