1

MFMailComposeViewController でメールを送信しようとしています。画像を添付してメールを送信できますが、mp3 または mp4 ファイルを添付しようとすると、次のメッセージが表示されます。

DA|/tmp/DAAccountsLoading.lock にあるロック ファイルを開けませんでした。とにかくアカウントを読み込みますが、悪いことが起こるかもしれません

(「To」フィールドの入力を開始した直後に表示される場合)、メッセージの送信に失敗します。

これが私のコードです(HelperUtilsクラスは私が作成したものであり、問​​題はないと確信しています):

NSData *myData = [NSData dataWithContentsOfFile:[HelperUtils getPathWithEnding:media.name]];
NSString *mimeTypeStr = [HelperUtils getMimeTypeOfFileWithPath:[HelperUtils getPathWithEnding:media.name]];
NSLog(mimeTypeStr);
NSLog([HelperUtils getPathWithEnding:media.name]);
[picker addAttachmentData:myData mimeType:mimeTypeStr fileName:media.name];
4

1 に答える 1

5
NSString *mp3File = [NSTemporaryDirectory() stringByAppendingPathComponent: @"tmp.mp3"];
NSURL    *fileURL = [[NSURL alloc] initFileURLWithPath:mp3File];
NSData *soundFile = [[NSData alloc] initWithContentsOfURL:fileURL];
[mailDialogController addAttachmentData:soundFile mimeType:@"audio/mpeg" fileName:@"tmp.mp3"];

mp3ファイルで動作します。mp4で失敗すると言うとき、どのように?

数回後にアプリがクラッシュする場合は、どこかでメモリ リークが発生している可能性があります。

于 2010-01-10T00:26:20.793 に答える