Search code examples
androidemail-client

Android - How to open the email client directly


I want to open the default email client instead of showing the options. I tried but i am not getting please can anyone help me.

I used the following code:

  final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);

        emailIntent.setType("text/html");
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My Allergy Journal");       
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml("<small>"+sb.toString()+"</small>"));                                 
        startActivity(Intent.createChooser(emailIntent, "Email:"));   

It's show the options

enter image description here

But I want to open then Default email client directly.

enter image description here


Solution

  • You can used the following code to open whatever intent you want eg gmail, facebook, email etc..Simple in the type as used in my code pass "gmail" if you want to open gmail, pass "face" if u want to open facebook

    Intent intent = new Intent(android.content.Intent.ACTION_SEND); 
    intent.setType("text/html");
    List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(intent, 0);
    
    if (!resInfo.isEmpty())
    {
        for (ResolveInfo info : resInfo) 
        {
        if (info.activityInfo.packageName.toLowerCase().contains(type) || info.activityInfo.name.toLowerCase().contains(type)) 
        {
                intent.putExtra(android.content.Intent.EXTRA_TEXT, htmlBody);
                intent.setPackage(info.activityInfo.packageName);   
                startActivity(Intent.createChooser(intent, getResources().getString(R.string.share_send_text)));
            }
    }