Geekleboard

Geekな奴がハード開発に関する情報を発信中

Obj-cでメールを自動送信する

2015/01/23 追記

この記事で書いたSMTPLibraryは動作が不安定なため MailCore2 を使った方法の方が良い


MailCore2を使ってiPhoneでメールを自動送信させる - Geekleboard

 

参考URL先のmanni氏のソースコードを少々変更したもの

Dropbox - SMTPLibrary-ARC.zip

Xcode 6.1で一応はコンパイルが通りiPhone4Sで動作するけれども

  • 1回の送信に50秒くらいかかる
  • 送信失敗時のデリゲートに飛んでもメールがちゃんと送られている場合がある

というあやしい挙動をする。

 

使い方は以下

 

ちなみに検索ワード「obj-c メール」なんかで引っかかる情報で多いのが

AppleのMessageUIライブラリなのだけれども

それを使うとメーラーが立ち上がるため、勝手に自動送信というわけには行かない。

(ユーザが「送る」ボタンを押さないとメール送信できない)

 

いらなくなったiPhoneをBLEハブとして使って

定期的にメールでセンサデータをサーバへ上げたい場合に使える。

 

参考

Issue 56 - skpsmtpmessage - ARC compatibility and Invalid Email Address crash - Quick SMTP client code for the iPhone - Google Project Hosting

Feb 5, 2012 の SMTPSender-ARC.zip が元ソース

 

jetseven/skpsmtpmessage · GitHub

jetseven氏のコードだとARC未対応のためビルドが通らない

 

木漏れ日の部屋へようこそ: iPhoneプログラミング(E-Mail自動送信にチャレンジ)

非ARCでもコンパイルオプション指定でビルドが通るらしい