Ну, вы не можете технически «автоматически отправить» сообщение, потому что для этого потребуется подтверждение пользователя.
Вы можете, однако, настроить содержимое сообщения и получателей (получателей) с помощью MFMessageComposeViewController
(достаточно много глотков) и отобразить диалоговое окно, для которого потребуется один дополнительный кран для отправки.
Чтобы получить доступ к этому диалоговому окну, вам нужно будет указать #import <MessageUI/MessageUI.h>
и добавить MFMessageComposeViewControllerDelegate
в ваше объявление контроллера контроллера в вашем файле заголовка.
Затем вы можете написать IBAction
. Во-первых, вы хотите проверить, действительно ли устройство может отправлять сообщения с текстовым контентом, используя canSendText
. Затем вы создадите контроллер представления, заполните его данными и представите диалог.
- (IBAction)sendMessage:(UIButton *)sender {
if([MFMessageComposeViewController canSendText]) {
MFMessageComposeViewController *messageController = [[MFMessageComposeViewController alloc] init]; // Create message VC
messageController.messageComposeDelegate = self; // Set delegate to current instance
NSMutableArray *recipients = [[NSMutableArray alloc] init]; // Create an array to hold the recipients
[recipients addObject:@"555-555-5555"]; // Append example phone number to array
messageController.recipients = recipients; // Set the recipients of the message to the created array
messageController.body = @"Example message"; // Set initial text to example message
dispatch_async(dispatch_get_main_queue(), ^{ // Present VC when possible
[self presentViewController:messageController animated:YES completion:NULL];
});
}
}
Одна последняя вещь: вы должны реализовать метод делегата сказать контроллер представления сообщений, чтобы закрыть, когда пользователь нажимает «отменить» в диалоговом окне отправки:
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
[self dismissViewControllerAnimated:YES completion:NULL];
}
Где вы хотите это сообщение Отправить? На какой объект? –
К нескольким NSStrings :) – Yomo
Вы имеете в виду SMS? Рассмотрим MFMessageComposeViewController. – matt