调用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 查询事件可否处理,然后再启动事件,或者自行处理就好了

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。