2012-09-03 76 views
0

我想通過facebook連接插件將我的phonegap應用程序與facebook集成在一起。我遵循指令here,因爲git不適合我,但我想我會以任何方式完成相同的設置。phongegap facebook連接集成問題

當我運行使用我的應用程序ID做FB.init()後,下面的代碼,我得到一個警告說「科爾多瓦Facebook連接插件失敗的auth.status」

console.log('Debug 1'); 
var params = { 
    method: 'feed', 
    name: 'Facebook Dialogs', 
    link: 'https://developers.facebook.com/docs/reference/dialogs/', 
    picture: 'http://fbrell.com/f8.jpg', 
    caption: 'Reference Documentation', 
    description: 'Dialogs provide a simple, consistent interface for applications to interface with users.' 
    }; 
console.log(params); 
FB.ui(params, function(obj) { console.log(obj);}); 

雖然logcat的輸出顯示這:

09-03 21:29:00.230: D/CordovaLog(21824): Error: Status=2 Message=Class not found 
09-03 21:29:00.230: D/CordovaLog(21824): file:///android_asset/www/cordova-2.0.0.js: Line 938 : Error: Status=2 Message=Class not found 
09-03 21:29:00.230: I/Web Console(21824): Error: Status=2 Message=Class not found at file:///android_asset/www/cordova-2.0.0.js:938 

我不知道這是否是我的應用程序的Facebook身份驗證或一些代碼問題的問題。我使用keytool生成了一個Android Hash Key並將其提交給了Facebook開發者頁面。當我使用相同的密鑰庫在eclipse中將我的android項目導出爲android應用程序時,它不會顯示我用於keytool(同一密鑰庫)的別名。所以我使用相同的別名和密碼創建了一個新的別名,然後在我的手機上安裝apk。這裏似乎是什麼問題?

回答

0

那麼有很多問題。首先,最令人困惑的是,下面的代碼不是放在plugins.xml中,而是放在config.xml中。

<plugin name="com.phonegap.facebook.Connect" value="com.phonegap.facebook.ConnectPlugin" /> 

之後,我沒有在Facebook開發者頁面輸入正確的散列鍵。由於每次需要測試應用程序時都不想通過密鑰庫導出apk,因此應該只運行由eclipse生成的調試apk(以> Android應用程序運行)並嘗試FB.login()。 Facebook會給你一個錯誤信息,說明你的密鑰是'xxxxxx',並且與你的應用頁面上列出的密鑰不匹配。請注意「xxxxxxx」並在Facebook應用頁面上輸入。

其他人是我自己的錯誤,不包括正確順序的腳本。我沒有仔細跟蹤這個例子。確保在爲自己的應用程序編寫代碼之前先獲取示例/ Simple/index.html。希望它有幫助...