0

我想直接打开安卓默认邮件客户端。它适用于除“Samsung Galaxy S”以外的大多数设备。实际上问题是我在编码中设置了电子邮件的主题和正文,这在大多数设备中都受到了影响,但在三星 Galaxy s 中没有受到影响。这里打开了一个空的撰写邮件。我该怎么做才能让它发挥作用?

代码

btn.setOnClickListener(new OnClickListener(){

    @Override
    public void onClick(View arg0) {
            // TODO Auto-generated method stub
            Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
            emailIntent.setType("text/html");
            List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(emailIntent, 0);
            if (!resInfo.isEmpty())
            {
                for (ResolveInfo info : resInfo) 
                {
                    System.out.println("info.activityInfo.packageName:"+info.activityInfo.packageName.toLowerCase());
                    System.out.println("info.activityInfo.name:"+info.activityInfo.name.toLowerCase());
                    if (info.activityInfo.packageName.toLowerCase().contains("mail") || info.activityInfo.name.toLowerCase().contains("mail")) 
                    {
                        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My Allergy Journal");       
                        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "My Allergy Journal Body");                                 
                        emailIntent.setPackage(info.activityInfo.packageName);   
                        startActivity(Intent.createChooser(emailIntent, "Email:"));   
                    }
                } 
            }

    }});
4

1 回答 1

0

try this code

    Intent email=new Intent(Intent.ACTION_SEND);
    email.putExtra(Intent.EXTRA_SUBJECT, "YOUR SUBJECT");
    email.putExtra(Intent.EXTRA_TEXT,"YOUR MESSAGE BODY");
    email.setType("message/rfc822");
    a.startActivity(Intent.createChooser(email, "Choose an Email Client :"));
于 2012-09-11T05:37:21.070 回答