Phonegap 2.1和facebook插件的NSInvalidArgumentException错误

时间:2012-10-16 00:18:53

标签: facebook cordova phonegap-plugins

我一直在关注facebook phonegap插件安装说明:https://github.com/davejohnson/phonegap-plugin-facebook-connect

花了我的时间并密切关注每一步,我能够在xcode中的模拟器中成功构建项目。我正在使用phonegap 2.1,这是我从phonegap网站下载的,不是直接来自github。

启动画面加载正常,但是一旦应用程序运行,这就是xcode的输出:

  

2012-10-15 17:04:40.604 NeighborFavor [1648:19a03]多任务 - >设备:是,应用程序:是

     

2012-10-15 17:04:40.606 NeighborFavor [1648:19a03] - [__ NSCFDictionary> dictionaryWithLowercaseKeys]:无法识别的选择器发送到实例0xa1943a0

     

2012-10-15 17:04:40.607 NeighborFavor [1648:19a03] * 由于未捕获>异常'NSInvalidArgumentException'而终止应用,原因:' - [__ NSCFDictionary> dictionaryWithLowercaseKeys]:无法识别的选择器发送到实例0xa1943a0'

     

* 第一次抛出调用堆栈:

     

(0x2a32012 0x2445e7e 0x2abd4bd 0x2a21bbc 0x2a2194e 0xbfc9 0xb39e 0xb5a5 0x3939 0x73446e> 0xb63e 0x3250 0x6527b7 0x652da7 0x653fab 0x665315 0x66624b 0x657cf8 0x294edf9 0x294ead0> 0x29a7bf5 0x29a7962 0x29d8bb6 0x29d7f44 0x29d7e1b 0x6537da 0x65565c 0x2ef6 0x2e25为0x1)

     

libc ++ abi.dylib:终止调用抛出异常

任何帮助都会非常感谢!!

2 个答案:

答案 0 :(得分:1)

您是否已将-load_all添加到Xcode中的Other Linker Flags?如果没有这个标志,外部库/框架中的类别就不会被加载,并且dictionaryWithLowercaseKeys不是Apple为字典提供的标准方法,它很可能是一个类别添加的方法(类的扩展,添加了其他方法)在运行时它。)

答案 1 :(得分:1)

我在ios tuturial https://github.com/davejohnson/phonegap-plugin-facebook-connect之后的第9步犯了一个错误。

完成

后,其他链接器标志值应如下所示
  

-weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_framework CoreMedia -weak-lSystem -all_load -Obj-C -lsqlite3.0

请注意字符串末尾的-lsqlite3.0,而不是将其添加为新的键/值对。一旦我改变了它就行了。再次感谢您的帮助。