当前位置: 代码迷 >> Android >> 调用Android系统安装的软件打开文件,程序停止运行解决方法
  详细解决方案

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

热度:39   发布时间:2016-04-28 03:58:56.0
调用Android系统安装的软件打开文件,程序停止运行
如题,调用Android系统安装的软件打开文件时,当系统有安装相关软件时程序正常运行,但是当系统找不到该文件类型匹配的软件时就停止运行了。现在我想让它找不到相应软件时能提示用户,而不是直接停止运行,代码应该怎么写,求大神赐教!!!

------解决思路----------------------
或者捕捉startActivity的异常,但是这种方式比较粗暴。
------解决思路----------------------

try {
    //把你7楼的代码放在这里
} catch (Exception e) {
    //提示用户没有找到
}

------解决思路----------------------
何必呢,直接使用

// 获取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 查询事件可否处理,然后再启动事件,或者自行处理就好了
  相关解决方案