1

1つのAndroidアプリケーションを開発する必要があります。ここでは、Androidアプリケーションからメールを送信する必要があります。

Androidアプリケーションからメールリストビューvlauesを送信する必要があります。

これは私のAndroidコードです:

public class InvoiceOrder extends Activity {


String mGrandTotal,mTitle,total,mCost;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub  
    super.onCreate(savedInstanceState);
    setContentView(R.layout.invoice);
    ListView mLstView1 = (ListView) findViewById(R.id.listView1);


    CustomerAdapter mViewCartAdpt = new CustomerAdapter(
            InvoiceOrder.this);
    mLstView1.setAdapter(mViewCartAdpt);

            Button login = (Button) findViewById(R.id.mBtnSubmit);
            login.setOnClickListener(new View.OnClickListener() {

        public void onClick(View arg0) {
            Intent i = new Intent(Intent.ACTION_SEND);
            i.setType("message/rfc822");
            i.putExtra(Intent.EXTRA_EMAIL  , new String[]{"demo@mercuryminds.com"});
            i.putExtra(Intent.EXTRA_SUBJECT, "Testing");
            i.putExtra(Intent.EXTRA_TEXT   , "mLstView1");
            try {
                startActivity(Intent.createChooser(i, "Send mail..."));
            } catch (android.content.ActivityNotFoundException ex) {
                Toast.makeText(InvoiceOrder.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
            }
         }
      });
        }

リストビューはこれらのアクティビティに表示されます。リストビューの値を電子メールに送信するにはどうすればよいですか。解決策を教えてください。

編集:

こんにちは私は自動的にメールを送信しました。だから私はjavamailapiを使用しました。

今、私は私のコードを次のように変更しました:

public class InvoiceOrder extends Activity {


String mGrandTotal,mTitle,total,mCost;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub  
    super.onCreate(savedInstanceState);
    setContentView(R.layout.invoice);
    ListView mLstView1 = (ListView) findViewById(R.id.listView1);


    CustomerAdapter mViewCartAdpt = new CustomerAdapter(
            InvoiceOrder.this);
    mLstView1.setAdapter(mViewCartAdpt);

            Button login = (Button) findViewById(R.id.mBtnSubmit);
            login.setOnClickListener(new View.OnClickListener() {

        public void onClick(View arg0) {
             Properties props = new Properties();
                props.put("mail.smtp.host", "smtp.gmail.com");
                props.put("mail.smtp.socketFactory.port", "465");
                props.put("mail.smtp.socketFactory.class",
                        "javax.net.ssl.SSLSocketFactory");
                props.put("mail.smtp.auth", "true");
                props.put("mail.smtp.port", "465");

                Session session = Session.getDefaultInstance(props,
                    new javax.mail.Authenticator() {
                        protected PasswordAuthentication getPasswordAuthentication() {
                            return new PasswordAuthentication("mroslinmhary@gmail.com","fg565jhjjh");
                        }
                    });

                try {

                    Message message = new MimeMessage(session);
                    message.setFrom(new InternetAddress("krishnaveni.veeman@mercuryminds.com"));
                    message.setRecipients(Message.RecipientType.TO,
                            InternetAddress.parse("demo@mercuryminds.com"));
                    message.setSubject("Testing Subject");
                    message.setContent("This is your product name : "+
                            "Hi Krishna" +"<br></br>This is your price : "+ "Hi veni", "text/html; charset=utf-8");
                    Transport.send(message);

                    System.out.println("Done");

                } catch (MessagingException e) {
                    throw new RuntimeException(e);
                }
               }



      });

今、私はリストビューを自動的に電子メールに送信する必要があります。ここでコンテンツを設定するにはどうすればよいですか。アイデアを教えてください。

4

4 に答える 4

2

アプリからのリクエストを受け取り、メールを送信するWebコマンド(場合によってはREST)を受信できるWebアプリケーションが必要です。

たとえば、サーバーがexample.comにある場合、次のようなURLでメールを送信するサービスを利用できます。

example.com/sendmail/およびPOST変数には、subject、fromAddress、toAddress、contentなどの変数が含まれます。

PHP、Ruby、Python、さらにはJavaなどのWebベースの言語でプログラミングできる場合は、これを記述して、アプリからリクエストを送信するだけです。

于 2013-01-04T03:57:19.320 に答える
0

以下のコードを使用してメールを送信します

    Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
        emailIntent.setType("plain/text");  
       emailIntent.putExtra(Intent.EXTRA_EMAIL  , new String[]{"demo@mercuryminds.com"});
       emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subject");
       emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "body text"); 
       startActivity(emailIntent);  
于 2013-01-04T04:07:05.027 に答える
0

アンドロイドからユーザーにメールを送信するには、ユーザーがそれを行うことができる2つの方法があります。
方法1:
インテントを使用します。コードは次のとおりです。

send = (Button) findViewById(R.id.emailsendbutton);

address = (EditText) findViewById(R.id.emailaddress);

subject = (EditText) findViewById(R.id.emailsubject);

emailtext = (EditText) findViewById(R.id.emailtext);

send.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

// TODO Auto-generated method stub
    try {
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);

emailIntent.setType("image/png");

emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { address.getText().toString() });

emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject.getText());
//emailIntent.setType("plain/text");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, emailtext.getText());

emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://"+ getPackageName() + "/" + R.drawable.ic_launcher));

Sendingmail2.this.startActivity(Intent.createChooser(emailIntent,"Send mail..."));
    }
    catch (Exception e) {
        Log.e("", "sendPlainTextEmail() failed to start activity.", e);
        //Toast.makeText(this, "No handler", Toast.LENGTH_LONG).show();
        Toast.makeText(getApplicationContext(),"No handler", Toast.LENGTH_LONG).show();
    }
}
});


方法2:静的Gmail IDとパスワードを入力してEメールをEメールIDに直接送信する次のURLに従ってください:http:
//davanum.wordpress.com/2007/12/22/android-send-email-via-gmail-actually- via-smtp /
または、ここにメールIDを入力してコードを要求すると、メールを直接送信するために行ったコードが送信されます。

于 2013-01-04T07:00:10.810 に答える
0

「message.setContent(」関数で電子メールとして送信するデータを設定してみてください。これは電子メール本文に追加されます。(リスト ビューを繰り返し、データを文字列変数に取得してから電子メールに追加します。 message) それはあなたが望むものですか?.

于 2013-01-04T06:32:34.610 に答える