2013-02-19 101 views
2

我使用PhoneGap的2.4做一個項目和最新的Facebook的插件的PhoneGap Facebook的插件

https://github.com/phonegap/phonegap-facebook-plugin

我的問題是張貼到牆上用戶飼料,我能夠對用戶進行認證,獲得所有適當的事件,等等,但當我試圖張貼到飼料(我先要求讀取,然後寫入權限序列,因爲在ios6內新的API,並有發佈權限的用戶,也我已經設置我的Facebook帳戶的設置,啊,我也使用Facebook SDK 3.1)控制檯只是槽和錯誤

* ****終止應用程序,由於未捕獲的異常'NSInternalInconsistencyException',原因:' - [__ NSCFDictionary removeObjectForKey:]:將變異方法發送到不可變對象**

正試圖從對象中刪除和無法更改的字典, ?哪裏?如何解決這個問題?

這就是我的js methond試圖做

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.' 
    }; 

    FB.ui(params, function(obj) { console.log(obj); }); 

的錯誤時調用FB.ui()

this is a screenshot of the thread stack is that helps!

我真的不知道該怎麼做,或者我可以開始尋找,感謝任何幫助!

回答

4

這是由Cordova 2.4.0發行版(它使用NSJSONSerialization,因此返回的對象現在不可變)之後FacebookConnect插件中的錯誤引起的。

pull請求已經取得了Github上包含的修復程序: https://github.com/phonegap/phonegap-facebook-plugin/pull/251

在此期間,您可以手動進行以下修改FacebookConnectPlugin.m:

更換線路284:

NSMutableDictionary *options = [[command.arguments lastObject] mutableCopy]; 

添加以下行之後310:

[options release]; 
+0

我可以確認此更改現已合併到github上插件的主分支,因此下載/克隆最新版本應包含修復程序。 – 2013-02-27 15:09:39