2

私はiPhone開発に不慣れです。追加のSMS詳細を含む文字列を渡したい。以下のコードを使用して特定の番号にSMSを送信していますが、SMS文字列を使用してデータを送信する場合は、どうすればよいですか?誰かがそのフォーマットを教えてもらえますか?

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://9016098909891"]];
4

2 に答える 2

1

URLスキームは、SMSSMS本文を埋める手段を提供しません。したがって、SMSを事前に入力する唯一のオプションは、MFMessageComposeViewController


メッセージングフレームワークを使用してテキストメッセージ本文を設定できます。これをフレームワークに追加する必要があります。#import <MessageUI/MessageUI.h>をインポートリストに追加します。

ビューコントローラがを実装していることを確認してください。MFMessageComposeViewControllerDelegateこれは、を閉じるために必要ですMFMessageComposeViewController

の実装MFMessageComposeViewControllerDelegate

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
    [controller dismissModalViewControllerAnimated:YES];
}

次に、メッセージコンポーザーを表示するメソッドに次のコードを配置します。

MFMessageComposeViewController *messageController = [[MFMessageComposeViewController alloc] init];
messageController.messageComposeDelegate = self;
messageController.body = @"Your message here.";
messageController.recipients = [NSArray arrayWithObject:@"9016098909891"];
[self presentModalViewController:messageController animated:YES];

[messageController release], messageController = nil;
于 2012-04-23T07:45:46.593 に答える
1

SMSテキスト本文を設定できるアプリのSMS機能で使用できます。

ステップ1:MessageUI Frameworkをプロジェクトにインポートし、ヘッダーファイルをインポートします#import <MessageUI/MessageUI.h>

ステップ2:次のようにSMSを送信します

    MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
    if([MFMessageComposeViewController canSendText])
    {
        controller.body = @"Hello from Mugunth";
        controller.recipients = [NSArray arrayWithObjects:@"12345678", @"87654321", nil];
        controller.messageComposeDelegate = self;
            controller.delegate = self;
        [self presentModalViewController:controller animated:YES];
    }

ステップ3:デリゲートを次のように処理します

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
    switch (result) {
        case MessageComposeResultCancelled:
            NSLog(@"Cancelled");
            break;
        case MessageComposeResultFailed:
            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"MyApp" message:@"Unknown Error"
                                                           delegate:self cancelButtonTitle:@”OK” otherButtonTitles: nil];
            [alert show];
            [alert release];
            break;
        case MessageComposeResultSent:

            break;
        default:
            break;
    }

    [self dismissModalViewControllerAnimated:YES];
}

こちらの記事を参照してくださいhttp://blog.mugunthkumar.com/coding/iphone-tutorial-how-to-send-in-app-sms/

于 2012-04-23T07:45:59.560 に答える