【问题标题】:Android intent e-mail not workingAndroid意图电子邮件不起作用
【发布时间】:2015-05-10 20:18:21
【问题描述】:

我正在尝试构建一个简单的 android 应用程序来使用 android 意图属性发送电子邮件。我使用按钮的 onClicklistener 来触发意图函数来调用电子邮件客户端,但由于某种原因它不起作用。我所看到的当我单击按钮时,代码底部会显示 Toast 消息。没有提示询问电子邮件客户端或任何内容。

    buttonSend.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            if ( mu.isInternetAvailable(SendMessage.this) ==true)
            {


             Log.i("START ONCLICK","");



              String to = emailid.getText().toString();
              String subject = textSubject.getText().toString();
              String driverId1=driverid.getText().toString();
              String message = textMessage.getText().toString();

                SharedPreferences spmail = SendMessage.this.getSharedPreferences("email", MODE_WORLD_READABLE);
                driver_mail=spmail.getString("email","");
                Log.i("SEND MAIL id is","DRIVERID "+driver_mail);
Intent email = new Intent(Intent.ACTION_SENDTO);

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

                  email.setData(Uri.parse("mailto:"));
                  String[] to1={"info@ZapaTaxi.com"}; 
                  email.putExtra(Intent.EXTRA_EMAIL,  to1);  
                  email.putExtra(Intent.EXTRA_SUBJECT, subject);  
                  email.putExtra(Intent.EXTRA_TEXT, message);  



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

                  Toast.makeText(SendMessage.this, "E-mail succesfully sent!!!!!", Toast.LENGTH_SHORT).show();
                  Intent it1=new Intent(SendMessage.this,Home.class);
                  startActivity(it1);
       }
    }

【问题讨论】:

  • 您是否尝试过相同的代码,但没有任何参数,例如 .setData 和 .putExtra 代码?
  • 试试这个:email.setData(Uri.parse("mailto:info@ZapaTaxi.com"));
  • 我尝试了你的两种解决方案都没有改变。问题是 logcat 中没有警告或错误来识别问题,请帮助大家。
  • 谢谢大家,问题已解决。看来我们不能在一个方法中编写多个 startActivity 函数。

标签: android email android-intent


【解决方案1】:

您必须将此代码放在其他地方:

 Intent it1=new Intent(SendMessage.this,Home.class);
 startActivity(it1);

【讨论】:

  • 没问题,你可以接受答案(不知道你是否也可以)
猜你喜欢
  • 1970-01-01
  • 2017-05-27
  • 1970-01-01
  • 2021-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多