特定の受信者に電子メールを送信する自動化アプリケーションを作成しました。インターネットに接続されている PC でエミュレーター (eclipse indigo AVD) を使用すると、電子メールが送信され、受信者はそれを受信しますが、私の問題は次の場合です。電子メールを送信しないインターネット (wifi 接続と 3g (HSDPA、GPRS)) を備えたデバイス (電話) でアプリケーションを使用しています。PCエミュレータでは正しく動作していますが、私のデバイスでは送信されません。(私のデバイスはGalaxy S2です)
これは、Sir Vinayak.B による電子メールの作成と送信に関する私の参考資料です。リンクを参照
デフォルト/組み込みアプリを使用せずにJavaMail APIを使用してAndroidで電子メールを送信する
Google で問題を検索したところ、wifi と 3g 接続が smtp ポート 465 に対してブロックされていることがわかりました。
とにかく、wifi または 3g 接続を介してメールを送信するために使用できるポートはありますか?
助けてください。
ここに私のsmtpプロパティがあります
private String mailhost = "smtp.gmail.com";
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", mailhost);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");
props.setProperty("mail.smtp.quitwait", "false");