2012-04-13 3 views
0

덕분에 ... 아이폰에서 iOS 5 SDK는 때마다 나는 다음과 같은 오류가 응용 프로그램 SMS에를 만들기 위해 전화를 사전에

이 응용 프로그램은 대상에 전무 뷰 컨트롤러를 밀어 시도했다.

... 난 당신이 시뮬레이터에서이 프로그램을 실행하고있는 경우는 SMS를하지 않기 때문에 당신이 오류가 발생합니다 생각

MFMailComposeViewController *MailController; 
MFMessageComposeViewController *SMScontroller; 
NSError *error; 
NSString *EmailMessage; 
NSString *SubjectMessage; 

-(IBAction)sendInAppSMS 
{ 

    if([MFMessageComposeViewController canSendText]) 
    { 
     SMScontroller = [[MFMessageComposeViewController alloc] init]; 
     SMScontroller.messageComposeDelegate = self; 

     NSString *MessageString = @"Hello"; 

     SMScontroller.body = MessageString; 

     SMScontroller.navigationBar.tintColor = [UIColor blackColor]; 

     [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque]; 

     [self presentModalViewController:SMScontroller animated:YES]; 

     [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque]; 
    } 
    else{ 
     // alertView to tell user to setup a mail account. 
     NSString *message = [[NSString alloc] initWithFormat:@"To use this feature, you need to have an iPhone with SMS abilities."]; 
     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"SMS Account Not Detected" message:message delegate:nil cancelButtonTitle:@"Understood" otherButtonTitles:nil]; 
     [alert show]; 
    } 

} 

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result 
{ 
    switch (result) { 
     case MessageComposeResultCancelled: 
     { 
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"I Like It" message:@"User cancelled sending the SMS" 
                  delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil]; 
      [alert show]; 
     } 
      break; 
     case MessageComposeResultFailed: 
     { 
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"I Like It" message:@"Error occured while sending the SMS" 
                  delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil]; 
      [alert show]; 
     } 
      break; 
     case MessageComposeResultSent: 
     { 
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"I Like It" message:@"SMS sent successfully..!" 
                  delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil]; 
      [alert show]; 
     } 
      break; 
     default: 
      break; 
    } 

    [self dismissModalViewControllerAnimated:YES]; 
} 

답변

1

내가 OS 4 SDK에서 근무 것을 가지고있는 코드입니다. 시뮬레이터에서 같은 오류가 발생하지만 내 전화기에 연결하면 정상적으로 작동합니다.