且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何检查是否在设备上安装的电子邮件客户端

更新时间:2023-11-26 14:27:52

使用这个,对我的作品:

 公共静态布尔isMailCli​​ent present(上下文的背景下){
    意向意图=新意图(Intent.ACTION_SEND);
    intent.setType(text / html的);
    最终的软件包管理系统软件包管理系统= context.getPackageManager();
    清单< ResolveInfo>清单= packageManager.queryIntentActivities(意向,0);    如果(则为list.size()== 0)
        返回false;
    其他
        返回true;
}

I need to check whether email client is installed on a device or not. I have used the following code but it does not work for me.

public boolean isIntentAvailable() {
    final PackageManager packageManager = getApplicationContext().getPackageManager();
    final Intent intent = new Intent(Intent.ACTION_SEND);
    intent.putExtra(Intent.EXTRA_EMAIL, "vin@gmail.com");
    List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.GET_META_DATA);
    return list.size() > 0;
} 

Use this, works for me :

public static boolean isMailClientPresent(Context context){
    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("text/html");
    final PackageManager packageManager = context.getPackageManager();
    List<ResolveInfo> list = packageManager.queryIntentActivities(intent, 0);

    if(list.size() == 0)
        return false;
    else 
        return true;
}