2011-06-15 54 views
6

我在Android上使用FBConnect,看來我需要的唯一ID是應用程序ID,它是一串數字:Android + Facebook:API KEY和API SECRET在哪裏使用?

Facebook mFacebook = new Facebook(FacebookConstants.APP_ID); 

但我也得到了API密鑰和API祕密時註冊我的應用程序,我想知道這些用途在哪裏?我做錯什麼了嗎?我查看了FBConnect的示例代碼,也沒有使用api key和api祕密的代碼。

編輯: 有人可以澄清,有三個密鑰/ ID:應用程序ID,應用程序密鑰和應用程序的祕密?以下是FBConnect示例項目的代碼: public static final String APP_ID =「175729095772478」;

我的應用程序的應用程序密鑰看起來不像這樣,我的應用程序密鑰不是這樣的。 我仍然感到困惑,在Facebook的文件,有一個命令:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore 
| openssl sha1 -binary 
| openssl base64 

它給了我,我可以用它來在Facebook上註冊一個字符串,但它是如何涉及到應用程序鍵和祕密?我嘗試了FBConnect的示例(簡單的示例),但我沒有執行keytool命令,它工作正常;但是,如果我使用我的應用程序的應用程序密鑰,它不起作用。

回答

10

這就是所有你需要的Facebook的SDK只是appid。您在Facebook網站上註冊的密鑰庫處理密鑰/密碼通常所需的所有身份驗證。

+0

感謝您的回覆,您能否澄清一下,是否有三個密鑰/ ID:應用ID,應用密鑰和應用密鑰?以下是FBConnect示例項目的代碼: public static final String APP_ID =「175729095772478」; //我的應用程序的應用程序關鍵字不像這樣,我的應用程序關鍵字中沒有數字。 – hzxu 2011-06-15 04:03:38

+0

我可以通過以下方式瞭解它:1.我從密鑰庫文件生成散列密鑰,並在Facebook 2中註冊散列。我使用密鑰存儲文件3簽署我的應用程序。因此,當我的應用程序使用應用程序密鑰連接到Facebook時,Facebook可以重新計算一些內容並查看它是否與註冊的哈希匹配。這是他們相關的方式嗎? – hzxu 2011-06-15 04:39:38

+3

@hzxu基本上它是如何工作的,你用你用來簽署apk的keystore生成哈希鍵,然後你在facebook網站上設置哈希鍵,並使用appid來啓動Facebook會話。這就是它的全部,如果它不適合你,它可能是你搞砸了你的hashkey。 – schwiz 2011-06-15 17:22:05