无法在iOS 6.0或6.1中运行应用程序

时间:2013-11-21 08:48:05

标签: ios iphone objective-c

我目前正在为iOS 6和7开发应用程序。我第一次使用故事板。当我在iOS 7上使用iPhone或模拟器时,我的应用程序运行正常。

但是,当我尝试在iOS 6或6.1上运行它时,它会崩溃并出现以下错误:

 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSPlaceholderString initWithString:]: nil argument'

注意:我的部署目标是6.0,但我的 Base SDK 是最新的(iOS 7.0)。

  • 我应该检查哪些设置?
  • 我应该加载早期的SDK吗?
  • 故事板是否与此有关?

2 个答案:

答案 0 :(得分:1)

我在更新到iOS 7时遇到了这样的问题。问题最终与UITextField的使用有关。使用iOS 7 SDK并针对iOS 6进行编译时,空文本字段将返回nil而不是@""。因此,如果您执行类似

的操作
NSMutableString *myString = [[NSMutableString alloc] initWithString:self.myTextField.text];

它会导致您的代码在您描述时爆炸。

答案 1 :(得分:0)

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' * - [NSPlaceholderString initWithString:]:nil参数'

它清楚地说明了你的代码中有一个NSString对象的异常,它获取了nil参数。因此,尝试放置断点并使用调试器来检查NSString对象获取nil参数的位置并尝试相应地更正它。