Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 由于NSInvalidArgumentException导致应用程序崩溃_Ios_Objective C - Fatal编程技术网

Ios 由于NSInvalidArgumentException导致应用程序崩溃

Ios 由于NSInvalidArgumentException导致应用程序崩溃,ios,objective-c,Ios,Objective C,每当我运行此功能时,我按“发送”按钮,电子邮件几乎会发送,直到我遇到以下内容: -(IBAction)send:(id)sender { NSString *message = [NSString stringWithFormat:@"\r\rThis is a report from the Arabian Bully Box iOS mobile application:\r\rName of victim = %@ \rName of Bully = %@ \rLocation =

每当我运行此功能时,我按“发送”按钮,电子邮件几乎会发送,直到我遇到以下内容:

-(IBAction)send:(id)sender
{
    NSString *message = [NSString stringWithFormat:@"\r\rThis is a report from the Arabian Bully Box iOS mobile application:\r\rName of victim = %@ \rName of Bully = %@ \rLocation = %@ \rDate(s) of Incident = %@ \rWitnesses = %@ \rDescription = %@", nameVictom.text, nameBully.text, location.text, date.text, witness.text, description.text];

//    label.text = message;
    NSLog(@"%@", message);

    nameVictom.text = @"";
    nameBully.text = @"";
    location.text = @"";
    date.text = @"";
    witness.text = @"";
    description.text = @"";

    label.text = @"Thank you for your help.";
    label.textColor = [UIColor blackColor];
    label.shadowColor = [UIColor clearColor];

    send.enabled = NO;

    NSLog(@"Start eMail");


    SKPSMTPMessage *smtpTestMessage = [[SKPSMTPMessage alloc] init];
    smtpTestMessage.fromEmail = @"***@gmail.com";
    smtpTestMessage.toEmail = @"***@yahoo.com";
    smtpTestMessage.relayHost = @"smtp.gmail.com";
    smtpTestMessage.requiresAuth = YES;
    smtpTestMessage.login = @"***@gmail.com";
    smtpTestMessage.pass = @"***";
    smtpTestMessage.subject = @"Bully Box Submission";
    smtpTestMessage.wantsSecure = YES;

    smtpTestMessage.delegate = self;

    NSDictionary *plainPart = [NSDictionary dictionaryWithObjectsAndKeys:kSKPSMTPPartContentTypeKey,
        message,kSKPSMTPPartMessageKey,kSKPSMTPPartContentTransferEncodingKey, nil];

//    NSDictionary *plainPart =  @{
//                                 message: kSKPSMTPPartContentTypeKey,
//                                 kSKPSMTPPartContentTransferEncodingKey: kSKPSMTPPartMessageKey
//                                 };


    smtpTestMessage.parts = [NSArray arrayWithObject:plainPart];

    [NSString stringWithFormat:@"%@",message];

    NSLog(@"\r\r\rAbout to send\r\r\r");

    [smtpTestMessage send];
    NSLog(@"sent");
}

我觉得好像什么都试过了。我很抱歉这么直言不讳,但我已经被难住了好一阵子了!我真的准备放弃了。提前感谢您的帮助!谢谢你看了这篇文章!xD在调试器()中创建异常断点。打断它,然后发布回溯


根据所提供的证据,这是任何人都能给出的答案。

您看到错误消息了吗?它说你的论点是零。你知道哪行代码引发了异常吗?“我已经尝试了一切”,这是读取错误消息的一部分我读取了错误消息。我知道这是因为一个零的争论。我很确定NSDictionary没有被创建。但我不知道为什么!那么,
appendString:
在哪里被调用?添加一个异常断点并返回调用堆栈以查明确切的问题。请耐心地尝试调试器,以便找到有错误的行。否则很难理解是什么错谢谢你的建议!我以前从未真正使用过xCode的这个功能!哈哈。这让我意识到NSArray的“零件”是零。@BrandonBoynton很棒——很高兴它起了作用!
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-     [__NSCFString appendString:]: nil argument'