Androidアプリからメールを送信する場合以下のインテントを用いて
startActivityをするサンプルはよく見かけるのですが。
Intent intent = new Intent(Intent.ACTION_SEND);
これだとFormがでちゃうので自動的にプログラムから送信しちゃいたいのですが。
これについてJavaMailを用いるとかなんとかみつけたけど、これもなんか曖昧でうまくいきません。
参考)
http://groups.google.co.jp/group/android-developers/browse_thread/thread/caac9c533a5ba722
Android携帯にはメールの設定がされているはずなのでこれを利用して、メールの送信を楽にできなのかなとおもっているのですが皆さんはどのように
されていますか?
それともこういった話題が過去ログにでてないところみるとAndroidアプリから直接メールを送信することはタブーなんでしょうか。
Androidにインストールされている標準のメーラーでは、外部から確認画面を
出さずにメールを出すことは出来なかったと記憶しています。
バックグラウンドで自動的にメールを送りたい場合は、自分で実装する必要が
あります。
/*********************************************
有限会社シーリス
代表 有山 圭二
@Address
〒530-0044
大阪市北区東天満二丁目2番5号
第2新興ビル6F
@Web http://www.c-lis.co.jp
*********************************************/
有山さまお返事ありがとうございます、
バックグラウンドでメール送信をするには自前で実装する必要ありですか、
わかりましたありがとうございます。
On 4月5日, 午後6:09, Keiji Ariyama <keiji_ariy...@c-lis.co.jp> wrote:
> 有山@大阪です。
>
> Androidにインストールされている標準のメーラーでは、外部から確認画面を
> 出さずにメールを出すことは出来なかったと記憶しています。
>
> バックグラウンドで自動的にメールを送りたい場合は、自分で実装する必要が
> あります。
>
> /*********************************************
> 有限会社シーリス
> 代表 有山 圭二
> @Address
> 〒530-0044
> 大阪市北区東天満二丁目2番5号
> 第2新興ビル6F
> @Webhttp://www.c-lis.co.jp
> *********************************************/
>
> (2010/04/05 18:00), 夜子ママ wrote:
> > いつもお世話になっております。
> > 夜子ままです
>
> > Androidアプリからメールを送信する場合以下のインテントを用いて
> > startActivityをするサンプルはよく見かけるのですが。
>
> > Intent intent = new Intent(Intent.ACTION_SEND);
>
> > これだとFormがでちゃうので自動的にプログラムから送信しちゃいたいのですが。
> > これについてJavaMailを用いるとかなんとかみつけたけど、これもなんか曖昧でうまくいきません。
>
> > 参考)
> >http://groups.google.co.jp/group/android-developers/browse_thread/thr...
>
> > Android携帯にはメールの設定がされているはずなのでこれを利用して、メールの送信を楽にできなのかなとおもっているのですが皆さんはどのように
> > されていますか?
>
> > それともこういった話題が過去ログにでてないところみるとAndroidアプリから直接メールを送信することはタブーなんでしょうか。
import java.net.socket;でsmtpプロトコルで送信を確認しました。
button押すだけです。
環境は、以下です。
api3です。
emelator上です。
manifestにinternetの許可必要かと。
認証のいらないsmtpサーバーでテストしました。
portは25番です。
ソースは、socket helo subject data 354 rcpt あたりでぐぐればOK
感想
送るには送れますが、サーバーアドレス、メールアドレス、ポート
後、認証とか色々セット必要ですので本物のメールアプリ作る気概
が無いと無理かも。
お願い ①ただで実機テストしてくれ
る方募集。当方実機なしの為。apkのみ。
お願い ②ただでmarketに出品してく
れる方募集。その際は、ソース提供します。
--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られて
います。
このグループに投稿するには、android-g...@googlegroups.com にメールを
送信してください。
このグループから退会するには、
android-group-j...@googlegroups.com にメールを送信してくださ
い。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja か
らこのグループにアクセスしてください。
こんにちは、夜子ままです。
Mailの件ですが、
http://code.google.com/p/javamail-android/downloads/list
こちらのライブラリを用いて当方でもなんとかメールを送ることができるようになりました。
ですがSMTPの設定やユーザ、パスワードの設定をアプリ側で設定しないといけないのがネックになっています。
Gmailの設定があるはずなのでそれが取得できればベストなんだけどなぁと思っていますが
セキュリティー上そういうことできるわけないだろう、、とあきらめています。
gmailはcontent providerだと思うんで操作できるんじゃないでしょうか。
調査します。
Socket でいいんじゃない?
Ryu
もしくは、HTTPでサーバにPOSTして、
サーバからメールを投げるという回りくどいですが意外と実装が簡単な方法も考えられますね。
2010年4月5日19:27 Lewske Wada <r...@run.sh>:
最近ようやくコンテンツプロバイダの振る舞いを理解してきたので再度調査をしました。
Androidに標準で提供されているMail機能があるので、ソースプログラムをみると内部で
SMTPやアカウント情報を取得していました、そこで保持しているデータをコンテンツ
プロバイダ経由取得できないか試してみましたができませんでした。
このプロバイダは外部からのアクセスを禁止しているようです。
多分、これのせい
MailのManifestより抜粋
<!-- Grant permission to system apps to access provider (see provider
below) -->
<permission
android:name="com.android.email.permission.ACCESS_PROVIDER"
android:protectionLevel="signatureOrSystem" ← これ?
android:label="@string/
permission_access_provider_label"
android:description="@string/
permission_access_provider_desc"/>
<uses-permission
android:name="com.android.email.permission.ACCESS_PROVIDER"/>
ということで自己解決してしまいましたが、他に方法がみつかったらまた報告したいとおもいます。
勘違い等あれがご指摘お願いします。