0

私は単純な電子メールアプリケーションを試しています。このリンクを 参照しましたhttp://www.mkyong.com/android/how-to-send-email-in-android/

しかし、実際のデバイスだけでなく、エミュレーターでも「このアクションを実行できるアプリケーションはありません」というエラーが表示されます。これは?誰かが私を案内してくれますか? 事前にサンクス。私のコードは次のとおりです。

package com.example.androidsample4;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MakeComment extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.comment);
        TextView tv1=(TextView)findViewById(R.id.textView1);
        TextView tv2=(TextView)findViewById(R.id.textView2);
        TextView tv3=(TextView)findViewById(R.id.textView3);
        TextView tv4=(TextView)findViewById(R.id.textView4);
        TextView tv5=(TextView)findViewById(R.id.textView5);
        final EditText ed1=(EditText)findViewById(R.id.editText1);
        EditText ed2=(EditText)findViewById(R.id.editText2);
        final EditText ed3=(EditText)findViewById(R.id.editText3);
        final EditText ed4=(EditText)findViewById(R.id.editText4);
        ed3.setKeyListener(null);
        Button b1=(Button)findViewById(R.id.button1);
        b1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                  //String to = ed3.getText().toString();
                  String name = ed1.getText().toString();
                  String message = ed4.getText().toString();

                  Intent email = new Intent(Intent.ACTION_SENDTO);
                 // email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to});
                  //email.putExtra(Intent.EXTRA_CC, new String[]{ to});
                  //email.putExtra(Intent.EXTRA_BCC, new String[]{to});
                  email.putExtra(Intent.EXTRA_SUBJECT, name);
                  email.putExtra(Intent.EXTRA_TEXT, message);

                  //need this to prompts email client only
                  email.setType("message/rfc822");

                  startActivity(Intent.createChooser(email, "Choose an Email client :"));

            }
        });
    }

}
4

4 に答える 4

1

メールを扱えるアプリをインストールしないとエミュレータ上では動きません。デフォルトでは、そのようなアプリはインストールされていません。実際のデバイスに電子メール クライアントをインストールして、これを再テストしてみてください。

于 2012-08-29T10:21:47.067 に答える
0

これを試して:

Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
            "mailto","abc@gmail.com", null));
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "EXTRA_SUBJECT");
startActivity(Intent.createChooser(emailIntent, "Send email..."));

お役に立てれば。

于 2013-02-22T10:41:34.957 に答える
-1

コードを投稿していないため、どこが間違っているかはわかりません。以下のコードを試してください (デバイスとエミュレータの両方で動作します)。動作する場合は、何か問題があり、別の電子メール クライアントをインストールしようとしない場合。

TextView email = (TextView) findViewById(R.id.email);
email.setText(Html.fromHtml("<a href=\"mailto:youremail@gmail.com\">E-mail</a>"));
email.setMovementMethod(LinkMovementMethod.getInstance());

「メール クライアント オプションを選択してください」 - そのウィンドウは、Android によって自動的に入力されます。

于 2012-08-29T10:33:19.053 に答える