以编程方式通过Xcode发送消息

时间:2016-02-01 07:28:40

标签: ios objective-c iphone xcode sms

我正在尝试通过编程方式通过 Xcode 发送消息,但是当我点击发送按钮时,它会打开消息发送框。但我想直接发送消息而不打开消息框。 是否可以在iOS Xcode中使用?请帮帮我。this is send button

when i click send button this is open sending message box

但不想打开发送消息框。

代码是

- (IBAction)sendSMS:(id)sender 
{
    MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
    if([MFMessageComposeViewController canSendText])
    {
        controller.body = @"Hello  this is anup";
        controller.recipients = [NSArray arrayWithObjects:@"7026144009", nil];
        controller.messageComposeDelegate = self;
        [self presentModalViewController:controller animated:YES];
    }
}


- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
    switch (result) 
    {
        case MessageComposeResultCancelled:
            NSLog(@"Cancelled");
            break;
        case MessageComposeResultFailed:
        { 
            NSLog(@"faild");
            UIAlertController *alrt=[UIAlertController alertControllerWithTitle:@"my apps" message:@"unknown error" preferredStyle:UIAlertControllerStyleAlert];
            UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){
                //do something when click button
            }];
            [alrt addAction:okAction];
            break;
        }
        case MessageComposeResultSent:
            break;
        default:
            break;
    }

    [self dismissModalViewControllerAnimated:YES];
}

3 个答案:

答案 0 :(得分:2)

是否可能,您的方案不需要MFMessageComposeViewController,只需一个网络服务即可,将两个(@"Hello this is anup",@"7026144009")发送到您的后端,后端开发人员发送SMS使用SMTP Server选项SMTP到该特定数字。

选择-2

如果您想自己使用某些第三方SDK,例如skpsmtpmessage,则其工作方式与if (!Regex.IsMatch(containerName, @"^[a-z0-9](([a-z0-9\-[^\-])){1,61}[a-z0-9]$")) throw new Exception("Invalid container name); 相同。

答案 1 :(得分:1)

您无法在没有用户内容的情况下以编程方式发送消息。 您可以做的最多是打开消息应用程序,如果用户决定发送消息,他可以发送它。

答案 2 :(得分:1)

您无法在未经用户同意的情况下以编程方式发送消息。您可以做的最多,是打开消息应用程序,如果用户决定发送它,他可以发送它。

(IBAction)sendingMessage:(id)sender {

        MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
        if([MFMessageComposeViewController canSendText])
        {
            controller.body = @"SMS message here";
            controller.recipients = [NSArray arrayWithObjects:@"+919015156562", nil];
            controller.messageComposeDelegate = self;
            [self presentModalViewController:controller animated:YES];
        }

}

(void)messageComposeViewController:(MFMessageComposeViewController *)controller
didFinishWithResult:(MessageComposeResult)result {
    [self dismissViewControllerAnimated:YES completion:nil];
}