user855698
user855698

Reputation:

While sending SMS, application is crashing

I want to send sms using below code in iPhone 4, but the application is crashing due to this code only.

if ([MFMessageComposeViewController canSendText]) {
                MFMessageComposeViewController *smsComposerController = [[[MFMessageComposeViewController alloc] init] autorelease];
                [smsComposerController setBody:@"First SMS"];
                smsComposerController.recipients = [NSArray arrayWithObjects:@"9886333333",@"9980444444",nil];
                smsComposerController.messageComposeDelegate = self;
                [smsComposerController release];
            }

I am new for SMS sending , so can any one help me what I am doing wrong?

Upvotes: 2

Views: 846

Answers (3)

User97693321
User97693321

Reputation: 3346

You need to add [self presentModalViewController:smsComposerController animated:YES]; in your code to send the sms.

if ([MFMessageComposeViewController canSendText]) {
            MFMessageComposeViewController *smsComposerController = [[[MFMessageComposeViewController alloc] init] autorelease];
            [smsComposerController setBody:@"First SMS"];
            smsComposerController.recipients = [NSArray arrayWithObjects:@"9886333333",@"9980444444",nil];
            smsComposerController.messageComposeDelegate = self;
           [self presentModalViewController:smsComposerController animated:YES];
        }

Upvotes: 0

TheSquad
TheSquad

Reputation: 7506

if ([MFMessageComposeViewController canSendText]) {
            MFMessageComposeViewController *smsComposerController = [[[MFMessageComposeViewController alloc] init] autorelease];
            [smsComposerController setBody:@"First SMS"];
            smsComposerController.recipients = [NSArray arrayWithObjects:@"9886333333",@"9980444444",nil];
            smsComposerController.messageComposeDelegate = self;
            [smsComposerController release];          <-------------- THIS IS YOUR ERROR
        }

You should not release an auto-release object.

Upvotes: 3

gcamp
gcamp

Reputation: 14672

You're autoreleasing and then releasing again smsComposerController.

Just release it once. You can review you memory management rules here.

Upvotes: 4

Related Questions