zxd_72 2013-04-15 05:27 采纳率: 0%
浏览 5536
已采纳

发送邮件时使用 hotmail 和 gmail 出现的问题

我使用Action_Send方法来发送邮件。当我通过点击发送按钮开启activity,得到一个选项发送email是通过 Gmail还是 Hotmail app(hotmail + SEVEN)?
如果选择Gmail的话,activity就会被强行关闭,如果选择Hotmail的话,用户输入的email地址就出现null。
贴出我的代码,哪里出错了呢?

package android.development.tutorial;

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;

public class EmailActivity extends Activity implements View.OnClickListener
{
    String      receipantAddress,       subject,    message;
    EditText    edtReceipantAddress,    edtSubject, edtMessage;
    Button      btnSend;
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.email);
        initUIComponents();
    }
    private void initUIComponents()
    {
        this.edtReceipantAddress=   (EditText)  findViewById(R.id.edtReceipantAddress);
        this.edtSubject         =   (EditText)  findViewById(R.id.edtSubject);
        this.edtMessage         =   (EditText)  findViewById(R.id.edtMessage);
        this.btnSend            =   (Button)    findViewById(R.id.btnSend);
        btnSend.setOnClickListener(this);
    }
    private void setEmailParameters()
    {
        this.receipantAddress   = this.edtReceipantAddress.getText().toString();
        this.subject            = this.edtSubject.getText().toString();
        this.message            = this.edtMessage.getText().toString();
    }

    public void onClick(View v) 
    {
        String emailAddresses []= {this.receipantAddress};
        setEmailParameters();

        Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,emailAddresses );
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, this.subject);
        emailIntent.setType("plain/text");
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, this.message);
        this.startActivity(emailIntent);
    }

    protected void onPause() 
    {
        super.onPause();
        EmailActivity.this.finish();
    }
}
  • 写回答

1条回答

  • Baby_Bonnie 2013-04-15 07:03
    关注

    这里出现了错误:

    String emailAddresses []= {this.receipantAddress};
           setEmailParameters();
    

    应该是下面这样,因为你在 setEmailParameters()中做了参数设置

    setEmailParameters();
    String emailAddresses []= {this.receipantAddress};
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教