10

メールとテキスト メッセージを送信するためのアプリがあります。

私が抱えている問題は、MFMessageComposeViewController の読み込みが以前の iOS よりも iOS 7 ではるかに遅くなり、連絡先の数が増えると最悪になることです。

コンテンツが読み込まれた状態でメッセージ アプリが開く前に、画面が数秒間真っ暗になります。

何かご意見は?

同じ大量の電子メールで、MFMailComposeViewController は以前と同じくらい高速です。

ヘルプ!!ありがとう。

4

3 に答える 3

4

私も同じ問題を抱えてる。私は作曲家を強く参照しました

@property (nonatomic, strong, retain) MFMessageComposeViewController *messageComposer;

次に、所有者クラスがこのメソッドを呼び出します。

-(void)sendSMSFromController:(UIViewController*)controller
{
    self.messageComposer = [MFMessageComposeViewController new];

    if([MFMessageComposeViewController canSendText]) {
        [_messageComposer setBody:_body];
        [_messageComposer setRecipients:[NSArray arrayWithObjects:_recipient, nil]];
        [_messageComposer setMessageComposeDelegate:self];
        [controller presentViewController:_messageComposer animated:NO completion:NULL];
    }
}

Composer はすぐに表示されますが、ゆっくりと消えます。以下で終了します。

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
    switch (result) {
        case MessageComposeResultCancelled:
            NSLog(@"Message sending cancelled.");
            break;

        case MessageComposeResultFailed:
            NSLog(@"Message sending failed.");
            break;

        case MessageComposeResultSent:
            NSLog(@"Message sent.");
        default:
            break;
    }


    [controller dismissViewControllerAnimated:YES completion:^(){
        self.messageComposer = nil;
    }];
}

デバイスを再起動すると、明らかに動作します。再起動する前に(無効な受信者を送信して MessageService をいじった後)、失敗しました。

于 2013-11-21T17:31:49.127 に答える
1

この問題は iOS7.0.3 で修正されました。

于 2013-10-24T13:01:16.387 に答える
1

iMessage の受信者についても、この問題が発生しています。

iCloud からの iMessage 同期履歴に関連付けられているようです。4 人の受信者がいて、最初の Apple iMessage ダイアログがポップアップするまでに約 30 秒かかりました。

これを一度待った後、送信をキャンセルし、次の繰り返しの試みはすぐに解決しました。この結果に加えて、iOS7 ではメッセージ履歴がコンポーザ ビューに表示される (iOS7 より前では表示されない) という事実から、Apple がビューをポップアップする前に、ある種の iCloud 同期を待機しています。

これは、異なる iCloud アカウントを持つ iPhone 4 と新しい iPhone 5s の両方で再現されたため、ハードウェアの制限や、iCloud アカウントまたは受信者に固有のものではないようです。


この問題の確認済みの解決策はありませんが、さらに調査するために提案するいくつかの回避策があります。

  • 一部のユーザーは、デバイスを再起動するとこの問題が解決すると報告しています。
  • これは、iOS7 にアップグレードした後、一意の iMessage 受信者ごとに「1 回限りの料金」になる場合があります。
于 2013-09-27T17:55:54.670 に答える