ユーザーが PDF を生成して送信できるようにするアプリの部分を作成します。うまくいっているようです。送信された PDF は MAC では正常に開きますが、iPhone では読み込みが継続され、開かれません。Ray Wenderlich Tutorial の助けを借りて PDF ドキュメントを作成し、MFMailComposeViewController のインスタンスを使用してモーダル ビュー コントローラーを介して送信しました。WTF私は間違っています。
更新: PDF は Ipad でも正常に開きます。問題は、PDF を作成するためのコードのどこかにあるのでしょうか? また、永続化されたPDFを実際に作成していて、同じ名前のファイルの新しいバージョンごとに置き換えられているのか、それともコンパイラをだましてドキュメントが保存されていると思わせて送信できるのか、少し不明です可能な限り最小限のコードでアウトします。
これに関する任意の考えをいただければ幸いです。
コードをチェックしてください:
if ([MFMailComposeViewController canSendMail])
{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"mail test"];
NSString* fileName = @"Invoice.PDF";
NSArray *arrayPaths =
NSSearchPathForDirectoriesInDomains(
NSDocumentDirectory,
NSUserDomainMask,
YES);
NSString *path = [arrayPaths objectAtIndex:0];
NSString* pdfFileName = [path stringByAppendingPathComponent:fileName];
NSData *myData = [NSData dataWithContentsOfFile:pdfFileName];
[picker addAttachmentData:myData mimeType:@"application/pdf" fileName:@"the PDF"];
[self presentModalViewController:picker animated:YES];
}