に壊れますプロジェクトオーナーは現在リンゴに雇われており、おそらくもっと良いことがあります。奇妙彼らが働くと思ったが、私はトラブルの添付ファイルは、iPhoneデバイス上で動作するようになってを持っていますiPhone上のBase64エンコーディングは、シミュレータで動作しますが、私は、簡単なSMTPクライアントコードを使用して、最初にGoogleのコードに掲載されていますデバイス
http://github.com/kailoa/iphone-smtp/tree/master
:コードのフォークは、それはあなたがで見つけることができますgithubの、で、最近で維持され、ありますシミュレータ。私のgithubのコメントは、ここで見つけることができます:
http://github.com/kailoa/iphone-smtp/commit/50cbd49f351c2f0bb3a5ad6aea7736ac82d40af2#comment_27560コンテキストなど、すべてのそれと
...私の質問です:誰もが成功したファイル(好ましくは、オーディオファイルを添付することができましたが、どのファイルが対応致します今すぐ)、電子メールに、iPhone上でSMTPクライアントと一緒に送信?私は実際に直接SMTPクライアントで送信する電子メールにファイルを添付できるようにしたいと思いますが、これまでのところ機能と動作が正しく機能するコードを見つけられず、自分のコードを正常に書くことができませんでしたと述べた。
ファイルがiPhone上でシミュレータとは異なる方法でエンコードされる理由はありますか?なぜなら、両方のコンテキストで作成された生のbase64文字列を見ると、それらは異なっているからです。なぜ私はそれが当てはまるのか分からない。
私のコードの関連部分はこれです:多くのコードや参照がこれを理解するために必要な場合
NSString* emailBody = @"This is a test email body";
NSDictionary *plainPart = [NSDictionary dictionaryWithObjectsAndKeys:@"text/plain",kSKPSMTPPartContentTypeKey, emailBody,kSKPSMTPPartMessageKey,@"8bit",kSKPSMTPPartContentTransferEncodingKey,nil];
NSString *imgPath = [[NSBundle mainBundle] pathForResource:@"screenshot" ofType:@"png"];
NSData *imgData = [NSData dataWithContentsOfFile:imgPath];
NSDictionary *imgPart = [NSDictionary dictionaryWithObjectsAndKeys:@"image/png;\r\n\tx-unix-mode=0644;\r\n\tname=\"screenshot.png\"", kSKPSMTPPartContentTypeKey, @"attachment;\r\n\tfilename=\"screenshot.png\"", kSKPSMTPPartContentDispositionKey, [imgData encodeBase64ForData],kSKPSMTPPartMessageKey, @"base64",kSKPSMTPPartContentTransferEncodingKey,nil];
testMsg.parts = [NSArray arrayWithObjects:plainPart,imgPart,nil];
、私が追加し続けることが幸せです。しかし、すべてのコードはgithubですぐに利用できるので、これに興味がある人なら誰でも簡単にすべてを見ることができます。
おかげ ライアン
アイデアをありがとう!私はそれを試して、それは問題を解決しなかったので、次の試み。 –