调用Android系统安装的软件打开文件,程序停止运行
问题描述
如题,调用Android系统安装的软件打开文件时,当系统有安装相关软件时程序正常运行,但是当系统找不到该文件类型匹配的软件时就停止运行了。现在我想让它找不到相应软件时能提示用户,而不是直接停止运行,代码应该怎么写,求大神赐教!!!
解决方案1
或者捕捉startActivity的异常,但是这种方式比较粗暴。 解决方案2
何必呢,直接使用
这样先通过 intent.resolve 查询事件可否处理,然后再启动事件,或者自行处理就好了
如题,调用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 查询事件可否处理,然后再启动事件,或者自行处理就好了

浙公网安备 33010602011771号