PhoneGap应用程序因“无法识别的选择器”错误而崩溃

时间:2012-03-08 03:38:27

标签: cordova

我有一个基本的PhoneGap项目,100%自动生成的代码。应用程序启动,并立即在第二行崩溃:

int main(int args, char* argv[]) {
    NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate"); // exception
    [pool release];
    return retVal;
}

例外是[__NSCFString count] unrecognized selector sent to instance。似乎有些东西需要一个字符串,而是得到一个nil。我应该设置一些配置设置吗?

编辑:我正在使用XCode 4.2.1。

感谢。

3 个答案:

答案 0 :(得分:2)

我明白了。这是我的错。

我的应用需要与Web服务进行通信,因此我将.plist文件中的ExternalHosts设置更改为*。问题是,我没有将项添加到数组,而是将类型更改为String。将其更改回Array后,一切都开始有效了。

答案 1 :(得分:0)

尝试使用此代码:

int main(int args, char* argv[]) {
    //NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate"); // exception
    //[pool release];
    return retVal;
}

答案 2 :(得分:0)

对我来说,我在javascript中重新安排了我的插件参数,但没有在我的后端代码中反映出这些变化......这似乎是一种“没有”类型的东西,而是简单疏忽的结果。有关详细信息,请参阅my answer here