2017-01-04 3 views
0

Любые мысли о том, почему MFMailComposeViewController работал в разработке, но когда я настроил среду Cloudkit на производство, контроллер вида даже не появится? Это кажется странным, но я уверен, что есть причина. Код, который работал буквально 5 минут назад, приведен ниже. Остальное приложение работает и прекрасно соединяется с сервером.MFMailComposeViewController не работает в производстве

CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase]; 
CKRecordID *record = [[CKRecordID alloc] initWithRecordName:@"hidden for stackoverflow"]; 
[publicDatabase fetchRecordWithID:record completionHandler:^(CKRecord * record, NSError *error) { 
    if (!error) { 
     dispatch_async (dispatch_get_main_queue(), ^{ 
      feedbackNumber = record[@"RequestNumber"]; 

      NSString* number = record[@"RequestNumber"]; 
      int value = [number intValue] +1; 
      record[@"RequestNumber"] = [NSString stringWithFormat:@"%d",value]; 
      [publicDatabase saveRecord:record completionHandler:^(CKRecord *savedRecord, NSError *saveError) { 

       dispatch_sync(dispatch_get_main_queue(), ^{ 
        NSString *emailTitle = [NSString stringWithFormat:@"%@%@%@", @"Request #", [NSString stringWithFormat:@"%d",value], @" - AssassinsX Immerse"]; 
        NSString *messageBody = @"Please type your email below"; 

        NSArray *toRecipents = [NSArray arrayWithObject:@"email here, hidden for stackoverflow"]; 

        MFMailComposeViewController *mc = [[MFMailComposeViewController alloc] init]; 
        mc.mailComposeDelegate = self; 
        [mc setSubject:emailTitle]; 
        [mc setMessageBody:messageBody isHTML:NO]; 
        [mc setToRecipients:toRecipents]; 

        [self presentViewController:mc animated:YES completion:nil]; 

       }); 
      }]; 
     }); 
    } 
}]; 
+0

Используйте свой отладчик и посмотрите, что произойдет. Успешно ли извлечение и сохранение? Вы подталкивали свою схему разработки к производству? – rmaddy

ответ

-1

Удостоверьтесь, что у вас есть какая-либо ваша учетная запись на вашем устройстве. Вот код в Swift

import UIKit 
import MessageUI 
class ViewController: UIViewController,MFMailComposeViewControllerDelegate 
{ 
    override func viewDidLoad() 
    { 
     super.viewDidLoad() 
     self.SendMail() 
    } 

    func SendMail() 
    { 
     let to = ["[email protected]"] 
     let Subject = "Subject Here" 
     let MessageBody = "Message Body"    
     let mc: MFMailComposeViewController = MFMailComposeViewController() 
     mc.mailComposeDelegate = self 
     mc.setSubject(Subject) 
     mc.setMessageBody(MessageBody, isHTML: false) 
     mc.setToRecipients(to) 
     self.presentViewController(mc, animated: true, completion: nil) 
    } 
} 
Смежные вопросы