

monacaを利用しハイブリッドアプリを作成しています。  
ボタンを押下にて、アプリ内で保持したメールアドレスへメーラー等を起動せず自動送信したいです。  
iosであればmailto,
androidであればwebintent等を利用すればメーラーの起動まではたどり着きますが、自動送信（バックグラウンド送信）の方法が分かりません。  
どのような手法が考えられるか、ご教示ください。


CC BY-SA 3.0
2015-10-04T02:31:19.753
17237
2015-12-22T09:42:24.497
2015-10-04T09:05:52.940
12556
12556
question
android ios monaca
メーラーを起動せずバックグラウンド送信したい


smtp実装したプラグインを作るか、自前で中継ウェブサービス立ち上げるか、どちらかですかね。


CC BY-SA 3.0
2015-10-04T09:26:22.223
17243
2015-10-04T09:26:22.223
12569
17237
answer


以前成功した方法を共有します。

FrontierMailというKou様が作成されたオープンソースを利用しました。  
(4年前から更新が止まっているため最新環境では動作するか未検証です)

こちらのReadMe手順に従いFrameworkを作成します。  
<https://github.com/kkoudev/FrontierMail>

プロジェクトにFrameworkを追加し、以下のような実装でメールが送信できます。

テストクラスの実装引用です。

[code]

    - (void)testSMTPSendPlainText {
    
        // メールメッセージを作成する
        FRMailMessage*  message = [FRMailMessage mailMessage];
    
        // 件名を設定する
        [message setSubject:MAIL_SUBJECT];
    
        // FROM名とアドレスを設定する
        [message setFromAddress:[FRMailAddress mailAddressWithName:MAIL_FROM_NAME address:MAIL_FROM_ADDRESS]];
    
        // 送信先名称とアドレスを設定する
        [message addToAddress:[FRMailAddress mailAddressWithName:MAIL_TO_NAME address:MAIL_TO_ADDRESS]];
    
        // MIMEパーツを作成する
        FRMimePart*     mimeTextPart = [FRMimePart mimePart];
    
        // 本文を設定する
        [mimeTextPart setText:MAIL_MESSAGE];
    
        // メールメッセージへMIME情報を設定する
        [message setMimePart:mimeTextPart];
    
        // SMTPセッションを作成する
        FRSMTPSession*  session = [FRSMTPSession
                                   smtpWithConnectionType:FRSMTPConnectionTLS 
                                   hostAddress:SMTP_HOST
                                   portNo:SMTP_PORT_NO];
    
        // セッションへ接続する
        [session connect:SMTP_ACCOUNT password:SMTP_PASSWORD];
    
        // メールを送信する
        [session sendMailMessage:message];    
    
    }
    
[/code]

自分のGmailのアカウントをSMTPサーバとして使用しました。  
SMTP_ACCOUNTとSMTP_PASSWORDには自分のGmailアカウント名とパスワードを入れました。


CC BY-SA 3.0
2015-10-21T04:54:57.360
17886
2015-10-21T04:54:57.360
11109
17237
answer


MailCore2というメール送受信のためのライブラリがあります。  
<https://github.com/MailCore/mailcore2>

iOS/Android両対応で現在もアップデートし続けているようです。


CC BY-SA 3.0
2015-10-23T08:19:31.107
17980
2015-10-23T08:19:31.107
3227
17237
answer