0

複数の連絡先にメッセージを送信する際に 1 つの問題に直面しています。

301 までの連絡先 : メッセージ アプリが開いていません。[招待] を複数回クリックすると、iMessage が開きますが、メッセージの読み込みにさらに時間がかかります (2 分)。

351 up contact : メッセージは黒い新規メッセージ画面で開かれ、メッセージ画面を開かずにアプリケーションに戻ります。

これが私のコードです:連絡先は電話番号の配列です

NSMutableArray *contacts = [NSMutableArray array];

for (User *user in users) {
    if (user.phone.length) {
        NSString *strphonenumber = [NSString stringWithFormat:@"%@",user.phone];
        [contacts addObject:strphonenumber];
    }
} 

MFMessageComposeViewController  *messanger = [[MFMessageComposeViewController alloc]init];
    messanger.messageComposeDelegate = self;
    messanger.recipients = contacts;
    messanger.body = [NSString stringWithFormat:@“body”;

    [self presentViewController:messanger animated:YES completion:NULL];

このエラーが発生しています:

<CKSMSComposeRemoteViewController: 0x12802f810> timed out waiting for fence barrier from com.apple.mobilesms.compose
4

4 に答える 4

0

これは私のために働く:

デリゲートをインターフェイスに設定します。

@interface ViewController <MFMessageComposeViewControllerDelegate>{}

デバイスがメッセージを送信できるかどうかを確認する

if([MFMessageComposeViewController canSendText] ){
  //device is possible to send messages
}else{
  //device can't send messages
}

メッセージの準備:

MFMessageComposeViewController* comp = [[MFMessageComposeViewController alloc] init];

 //set properties
 comp.body = @"body";
 comp.recipients = [NSArray arrayWithObjects:phone1, phone2, nil];
 comp.messageComposeDelegate = self;

ダイアログを開く:

[self presentViewController:comp animated:YES completion:nil];

結果を決定する

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result{
    //test result
    switch (result) {
        case MessageComposeResultCancelled:
            [self makeAlert:@"Result canceled"];
            break;
        //message was sent
        case MessageComposeResultSent:
            [self makeAlert:@"Result sent"];
            break;
        case MessageComposeResultFailed:
            [self makeAlert:@"Result Failed"];
            break;
        default:
            break;
    }

    //dismiss view
    [self dismissViewControllerAnimated:YES completion:nil];
}
于 2015-08-12T08:17:16.663 に答える
0

これを試して...

NSString *strContacts = [NSString stringWithFormat:@"%@",add multipal contacts];

MFMessageComposeViewController *message = [[MFMessageComposeViewController new];
message.recipients  = @[strContacts];
于 2015-08-12T07:55:29.357 に答える
0

私は同じ問題を抱えていた

messanger.recipients= // 常に文字列の配列でなければなりません。

送信先の電話番号が であることを確認してmessanger.recipientsくださいNSString

于 2015-08-12T07:57:50.177 に答える