首页 > 代码库 > 调用Android系统安装的软件打开文件,程序停止运行

调用Android系统安装的软件打开文件,程序停止运行

问题描述
如题,调用Android系统安装的软件打开文件时,当系统有安装相关软件时程序正常运行,但是当系统找不到该文件类型匹配的软件时就停止运行了。现在我想让它找不到相应软件时能提示用户,而不是直接停止运行,代码应该怎么写,求大神赐教!!!
解决方案1
或者捕捉startActivity的异常,但是这种方式比较粗暴。 解决方案2
try {
    //把你7楼的代码放在这里
} catch (Exception e) {
    //提示用户没有找到
}
解决方案3
何必呢,直接使用

// 获取PackageManager对象
        PackageManager pm = this.getPackageManager();
        // 设置<intent-filter>标签内需要满足的条件
        Intent intent = new Intent(Intent.ACTION_MAIN, null);
        intent.addCategory(Intent.CATEGORY_DEFAULT);
        if(intent.resolveActivity(pm)!=null){
            startActivity(intent);
        }else{
            //在这里处理没有可打开程序的事件
        }


这样先通过 intent.resolve 查询事件可否处理,然后再启动事件,或者自行处理就好了

调用Android系统安装的软件打开文件,程序停止运行