SecurityExceptionを克服してGmailユーザーアカウントのパスワードを取得する方法はありますか?
ユーザープロンプトなしでバックグラウンドでメールを送信するように取り組んでいます。これに使用したjavamailAPIには、メールの送信元のアカウントのユーザー名とパスワードが必要です。AndroidでAccountMangerを使用してパスワードを取得するのに問題があります。
SecurityExceptionを克服してGmailユーザーアカウントのパスワードを取得する方法はありますか?
ユーザープロンプトなしでバックグラウンドでメールを送信するように取り組んでいます。これに使用したjavamailAPIには、メールの送信元のアカウントのユーザー名とパスワードが必要です。AndroidでAccountMangerを使用してパスワードを取得するのに問題があります。
幸いなことに、いいえ。このActivityManager.getPassword()
呼び出しは、オーセンティケーター モジュールと同じ UID を持つアプリケーション (この場合は Google アプリケーション) に対してのみ許可されます。呼び出しに成功したとしても、実際のパスワードは保存されず、暗号化されたバージョンまたはマスター トークンが保存されます。仕組みの詳細については、http: //nelenkov.blogspot.jp/2012/11/android-online-account-management.htmlをご覧ください。
ただし、Google の SMTP サーバーはパスワードの代わりに OAuth2 トークンをサポートしているため、トークンを取得してAccountManager
それを使用して認証し、メールを送信できます。詳細はこちら:
https://developers.google.com/google-apps/gmail/oauth_overview